---
name: "zmq_ctx_destroy"
section: "3"
platform: "linux"
package: "zeromq"
version: "4.3.5-3"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/zmq_ctx_destroy"
---

# zmq\_ctx\_destroy(3)

terminate a 0MQ context

## NAME

zmq\_ctx\_destroy - terminate a 0MQ context

## SYNOPSIS

**int zmq\_ctx\_destroy (void** *\*context***);**

## DESCRIPTION

The *zmq\_ctx\_destroy()* function shall destroy the 0MQ context *context*.

Context termination is performed in the following steps:

 1\. Any blocking operations currently in progress on sockets open within *context* shall return immediately with an error code of ETERM. With the exception of *zmq\_close()*, any further operations on sockets open within *context* shall fail with an error code of ETERM.

 2\. After interrupting all blocking calls, *zmq\_ctx\_destroy()* shall *block* until the following conditions are satisfied:

• All sockets open within *context* have been closed with *zmq\_close()*.

• For each socket within *context*, all messages sent by the application with *zmq\_send()* have either been physically transferred to a network peer, or the socket’s linger period set with the *ZMQ\_LINGER* socket option has expired.

For further details regarding socket linger behaviour refer to the *ZMQ\_LINGER* option in [**zmq\_setsockopt**(3)](/zmq_setsockopt/3.md).

This function is deprecated by [**zmq\_ctx\_term**(3)](/zmq_ctx_term/3.md).

## RETURN VALUE

The *zmq\_ctx\_destroy()* function shall return zero if successful. Otherwise it shall return -1 and set *errno* to one of the values defined below.

## ERRORS

**EFAULT**

The provided *context* was invalid.

**EINTR**

Termination was interrupted by a signal. It can be restarted if needed.

## SEE ALSO

[**zmq**(7)](/zmq/7.md) [**zmq\_init**(3)](/zmq_init/3.md) [**zmq\_close**(3)](/zmq_close/3.md) [**zmq\_setsockopt**(3)](/zmq_setsockopt/3.md)

## AUTHORS

This page was written by the 0MQ community. To make a change please read the 0MQ Contribution Policy at **http://www.zeromq.org/docs:contributing**.
