TINMAN 3D / REALTIME TERRAIN
Software Development Kit - User Manual

class RunningOperation in Tinman.Core.Threading.Operations

Represents a running operation.

sealed class RunningOperation extends Disposable
  implements IProgressInfo

See also:

IOperation
IProgressMonitor

Public / Attributes

Error

The error that has occurred most recently.

public property Error { get }
type TinmanError
value The error or null.

IsSoleOwnership

Will this object be disposed upon the next call to Dispose?

[ThreadSafe]
public property IsSoleOwnership { get }
type bool
value true if the object will be disposed when Dispose is called,
false if the object will not be disposed, because some other code is still holding shared ownership (see AcquireBase).
inherited Disposable.IsSoleOwnership

LifecycleState

Returns the lifecycle state of this object.

public property LifecycleState { get }
type LifecycleState
value The lifecycle state.
inherited Disposable.LifecycleState

Progress

The current progress, in percent.

public property Progress { get }
type int32
value [0..100] The current progress, in percent.
implements IProgressInfo.Progress

Thread

Returns the background thread that executes the operation.

public property Thread { get }
type Thread
value [not-null] The background thread.

TimeElapsed

The elapsed time of the operation, in seconds.

public property TimeElapsed { get }
type float64
value The elapsed time, in seconds.
implements IProgressInfo.TimeElapsed

TimeRemaining

The estimated remaining time of the operation, in seconds.

public property TimeRemaining { get }
type float64
value The remaining time, in seconds.
implements IProgressInfo.TimeRemaining

TimeTotal

The estimated total time of the operation, in seconds.

public property TimeTotal { get }
type float64
value The total time, in seconds.
implements IProgressInfo.TimeTotal

Public / Methods

AcquireBase

Acquires a strong reference to this disposable object.

[OwnerReturn, Pure]
public method AcquireBase (bool allowNull = false)
type IDisposable
params allowNull Depicts what to do when this object is no longer valid:
true: return null
false: throw an exception
returns The strong reference to this disposable object or null iff allowNull is true and this object is no longer valid.
inherited Disposable.AcquireBase

Remarks:

The object will not be actually disposed by calls to IDisposable when there is at least one strong reference left. Code that calls this method is responsible for calling the IDisposable method accordingly.

This method is not intended to be used in performance-critical code. It should only be used to high-level resource management.

Using this method usually requires type casting. Subclasses may additionally implement IDisposableGeneric, in order to provide some syntactic sugar for that.

Exceptions:

Cancel

Calls Cancel on the running background operation, signalling it to stop as soon as possible.

public method Cancel ()

Dispose

Releases all resources held by this object if there are no more strong references to it, decrements the reference counter by one otherwise.

[Dispose, OwnerThis, ThreadSafe]
public method Dispose ()
inherited Disposable.Dispose

Remarks:

The Dispose method silently returns if the object has already been disposed.

Implementing methods must not throw any exceptions.

Update

Updates the progress values.

public method Update ()
type bool
returns true if the operation is running, false if the operation has finished or an error has occurred.