Struct libpulse_binding::operation::Operation[][src]

pub struct Operation<ClosureProto: ?Sized> { /* fields omitted */ }

An asynchronous operation object.

Note: Saves a copy of active multi-use closure callbacks, which it frees on drop.

Methods

impl<ClosureProto: ?Sized> Operation<ClosureProto>
[src]

Cancel the operation.

Beware! This will not necessarily cancel the execution of the operation on the server side. However it will make sure that the callback associated with this operation will not be called any more, effectively disabling the operation from the client side's view.

Warning, you should never attempt to use this to cancel a callback from within the execution of that callback itself. This should go without saying, since it makes absolutely no sense to try and do this, but be aware that this is not supported by the C API and will break things.

Return the current status of the operation

Set the callback function that is called when the operation state changes.

Usually this is not necessary, since the functions that create Operation objects already take a callback that is called when the operation finishes. Registering a state change callback is mainly useful, if you want to get called back also if the operation gets cancelled.

Trait Implementations

impl<ClosureProto: ?Sized> Drop for Operation<ClosureProto>
[src]

Executes the destructor for this type. Read more

Auto Trait Implementations

impl<ClosureProto> !Send for Operation<ClosureProto>

impl<ClosureProto> !Sync for Operation<ClosureProto>