Struct AsyncOperationHandle<TObject>
Handle for internal operations. This allows for reference counting and checking for valid references.
Inherited Members
Namespace: UnityEngine.ResourceManagement.AsyncOperations
Assembly: Unity.ResourceManager.dll
Syntax
public struct AsyncOperationHandle<TObject> : IEnumerator, IEquatable<AsyncOperationHandle<TObject>>
Type Parameters
Name | Description |
---|---|
TObject | The object type of the underlying operation. |
Properties
Name | Description |
---|---|
DebugName | Debug name of the operation. |
IsDone | True if the operation is complete. |
OperationException | The exception for a failed operation. This will be null unless Status is failed. |
PercentComplete | The progress of the internal operation. This is evenly weighted between all sub-operations. For example, a LoadAssetAsync call could potentially be chained with InitializeAsync and have multiple dependent operations that download and load content. In that scenario, PercentComplete would reflect how far the overal operation was, and would not accurately represent just percent downloaded or percent loaded into memory. For accurate download percentages, use GetDownloadStatus(). |
Result | The result object of the operations. |
Status | The status of the internal operation. |
Task | Return a Task object to wait on when using async await. |
Methods
Name | Description |
---|---|
Equals(AsyncOperationHandle<TObject>) | Provide equality for this struct. |
GetDependencies(List<AsyncOperationHandle>) | Get dependency operations. |
GetDownloadStatus() | Return the current download status for this operation and its dependencies. |
GetHashCode() | Get hash code of this struct. |
IsValid() | Check if the handle references an internal operation. |
Release() | Release the handle. If the internal operation reference count reaches 0, the resource will be released. |
ReleaseHandleOnCompletion() | Automatically release this handle upon Completed callback |
WaitForCompletion() | Synchronously complete the async operation. |
Events
Name | Description |
---|---|
Completed | Completion event for the internal operation. If this is assigned on a completed operation, the callback is deferred until the LateUpdate of the current frame. |
CompletedTypeless | Completion event for non-typed callback handlers. If this is assigned on a completed operation, the callback is deferred until the LateUpdate of the current frame. |
Destroyed | Event for handling the destruction of the operation. |
Operators
Name | Description |
---|---|
implicit operator AsyncOperationHandle(AsyncOperationHandle<TObject>) | Conversion from typed to non typed handles. This does not increment the reference count. To convert from non-typed back, use AsyncOperationHandle.Convert<T>() |