# LibTmux.CancellationSubscription

- **Module:** LibTmux
- **Package:** LibTmux
- **Language:** Julia
- **Kind:** struct
- **Source:** https://github.com/libtmux/libtmux-julia/blob/f3da513be1225d36d5854cd8db5972c01857578e/src/process.jl#L137
- **Page:** https://libtmux.org/en/julia/latest/reference/libtmux-cancellationsubscription/

```
LibTmux.CancellationSubscription(
    token::LibTmux.CancellationToken,
    key::UInt64,
    lock::ReentrantLock,
    closed::Bool
)

LibTmux.CancellationSubscription(token, key, lock, closed)
```

An owned cancellation callback registration; `close` unregisters and joins its callback.

## Methods

### `CancellationSubscription` (overload 1)

```julia
LibTmux.CancellationSubscription(
    token::LibTmux.CancellationToken,
    key::UInt64,
    lock::ReentrantLock,
    closed::Bool
)
```

[Source](https://github.com/libtmux/libtmux-julia/blob/f3da513be1225d36d5854cd8db5972c01857578e/src/process.jl#L139).

### `LibTmux.CancellationSubscription(token, key, lock, closed)`

[Source](https://github.com/libtmux/libtmux-julia/blob/f3da513be1225d36d5854cd8db5972c01857578e/src/process.jl#L139).

## Parameters

- `token` (`LibTmux.CancellationToken`) (for `CancellationSubscription(token, key, lock, closed) [overload 1]`)
- `key` (`UInt64`) (for `CancellationSubscription(token, key, lock, closed) [overload 1]`)
- `lock` (`Base.ReentrantLock`) (for `CancellationSubscription(token, key, lock, closed) [overload 1]`)
- `closed` (`Bool`) (for `CancellationSubscription(token, key, lock, closed) [overload 1]`)
- `token` (`Any`) (for `CancellationSubscription(token, key, lock, closed) [overload 2]`)
- `key` (`Any`) (for `CancellationSubscription(token, key, lock, closed) [overload 2]`)
- `lock` (`Any`) (for `CancellationSubscription(token, key, lock, closed) [overload 2]`)
- `closed` (`Any`) (for `CancellationSubscription(token, key, lock, closed) [overload 2]`)

## Members

### Other members

- `closed` (property)
- `key` (property)
- `lock` (property)
- `token` (property)
