Base interface that can be run via the RunningOperation class.
A class that implements the IOperation interface performs a lengthy task. Typically, this task will be executed in a background thread. Running background operations are represented by instances of the RunningOperation class.
When a background operation is executed, the following tasks are performed:
Requests that the running background operation gracefully terminates.
An IOperation is free to honour a cancel request or to ignore it. Cancelling a background operation should be considered as a hint to terminate as soon as possible.
Shall the background operation cancel?
Once Cancel has been called, this property will return
Runs the operation synchronously in the calling thread.
If the operation has failed.