Class ThreadManager
- Namespace
- WitShells.ThreadingJob
public class ThreadManager : MonoSingleton<ThreadManager>, IDisposable
- Inheritance
-
ThreadManager
- Implements
- Inherited Members
Properties
ActiveThreads
public int ActiveThreads { get; }
Property Value
QueuedJobs
public int QueuedJobs { get; }
Property Value
Methods
Awake()
Unity lifecycle: assigns the singleton instance and optionally marks it persistent. Destroys duplicate GameObjects and warns in the console if more than one exists.
public override void Awake()
CancelJob(string)
public bool CancelJob(string jobId)
Parameters
jobIdstring
Returns
Dispose()
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
public void Dispose()
EnqueueJob<TResult>(ThreadJob<TResult>, UnityAction<TResult>, UnityAction<Exception>)
public string EnqueueJob<TResult>(ThreadJob<TResult> job, UnityAction<TResult> onComplete, UnityAction<Exception> onError = null)
Parameters
Returns
Type Parameters
TResult
EnqueueJobsBatch(List<ThreadJobItem>)
Helper method to enqueue multiple jobs into a single JobThread. Distributes jobs across available threads if no single thread can handle all.
public bool EnqueueJobsBatch(List<ThreadJobItem> jobs)
Parameters
jobsList<ThreadJobItem>
Returns
EnqueueStreamingJob<TResult>(ThreadJob<TResult>, UnityAction<TResult>, UnityAction, UnityAction<Exception>)
public string EnqueueStreamingJob<TResult>(ThreadJob<TResult> job, UnityAction<TResult> onProgress, UnityAction onComplete = null, UnityAction<Exception> onError = null)
Parameters
jobThreadJob<TResult>onProgressUnityAction<TResult>onCompleteUnityActiononErrorUnityAction<Exception>
Returns
Type Parameters
TResult
GetActiveJobIds()
public string[] GetActiveJobIds()
Returns
- string[]
GetStats()
public ThreadManagerStats GetStats()
Returns
IsJobActive(string)
public bool IsJobActive(string jobId)
Parameters
jobIdstring
Returns
OnDestroy()
Unity lifecycle: clears the static instance reference when this object is destroyed.
protected override void OnDestroy()