A disposable is a mechanism for memory management and cancellation. When starting a signal producer, a disposable will be returned. This disposable can be used by the caller to cancel the work that has been started, clean up all temporary resources, and then send a final interrupted event with regard to the particular signal that was created.