Table of Contents

Class ThreadManager

public class ThreadManager : MonoSingleton<ThreadManager>, IDisposable
Inheritance
ThreadManager
Implements
Inherited Members

Properties

ActiveThreads

public int ActiveThreads { get; }

Property Value

int

QueuedJobs

public int QueuedJobs { get; }

Property Value

int

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

jobId string

Returns

bool

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

job ThreadJob<TResult>
onComplete UnityAction<TResult>
onError UnityAction<Exception>

Returns

string

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

jobs List<ThreadJobItem>

Returns

bool

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

job ThreadJob<TResult>
onProgress UnityAction<TResult>
onComplete UnityAction
onError UnityAction<Exception>

Returns

string

Type Parameters

TResult

GetActiveJobIds()

public string[] GetActiveJobIds()

Returns

string[]

GetStats()

public ThreadManagerStats GetStats()

Returns

ThreadManagerStats

IsJobActive(string)

public bool IsJobActive(string jobId)

Parameters

jobId string

Returns

bool

OnDestroy()

Unity lifecycle: clears the static instance reference when this object is destroyed.

protected override void OnDestroy()