Manages the engine's threads.
Uses a simple round-robin threadpool. It is recommended that other thread managers are used instead of this one; it is kept for compatability and a fallback in case of problems.
Inheritance: IThreadManager
 internal WorkerThread(SimpleThreadManager manager, Action <object> threadStart, object initializationInformation)
 {
     this.manager                   = manager;
     Thread                         = new Thread(ThreadExecutionLoop);
     Thread.IsBackground            = true;
     taskQueue                      = new Queue <Action <object> >();
     taskInformationQueue           = new Queue <object>();
     this.threadStart               = threadStart;
     this.initializationInformation = initializationInformation;
     Thread.Start();
 }
 internal WorkerThread(SimpleThreadManager manager, Action<object> threadStart, object initializationInformation)
 {
     this.manager = manager;
     Thread = new Thread(ThreadExecutionLoop);
     Thread.IsBackground = true;
     taskQueue = new Queue<Action<object>>();
     taskInformationQueue = new Queue<object>();
     this.threadStart = threadStart;
     this.initializationInformation = initializationInformation;
     Thread.Start();
 }