Disconnects a handler from a cancellable instance similar to
g_signal_handler_disconnect(). Additionally, in the event that a
signal handler is currently running, this call will block until the
handler has finished. Calling this function from a
#GCancellable::cancelled signal handler will therefore result in a
deadlock.
This avoids a race condition where a thread cancels at the
same time as the cancellable operation is finished and the
signal handler is removed. See #GCancellable::cancelled for
details on how to use this.
If @cancellable is %NULL or @handler_id is 0 this function does
nothing.
Disconnects a handler from a cancellable instance similar to g_signal_handler_disconnect(). Additionally, in the event that a signal handler is currently running, this call will block until the handler has finished. Calling this function from a #GCancellable::cancelled signal handler will therefore result in a deadlock.
This avoids a race condition where a thread cancels at the same time as the cancellable operation is finished and the signal handler is removed. See #GCancellable::cancelled for details on how to use this.
If @cancellable is %NULL or @handler_id is 0 this function does nothing.