/// <summary> /// This constructor is used by the class internally to create new instances when a thread /// becomes blocked by a user code callback. /// </summary> private TaskWorkerThread ( TaskExecutionModule parentModule, ManualResetEvent exitTaskThreads, ExitTaskCache exitTaskThreadsCache, Queue <TaskWorkerThread> workerThreadQueue, Hashtable handleIdToWorkerThread, Queue <TaskExecutionState> workItemQueue, ManualResetEvent workItemInsertionEvent, Hashtable waitingTasks, bool profileExecution ) { this.parentModule = parentModule; this.exitTaskThreads = exitTaskThreads; this.exitTaskThreadsCache = exitTaskThreadsCache; this.workerThreadQueue = workerThreadQueue; this.handleIdToWorkerThread = handleIdToWorkerThread; this.workItemQueue = workItemQueue; this.workItemInsertionEvent = workItemInsertionEvent; this.waitingTasks = waitingTasks; this.profileExecution = profileExecution; InitializePerInstanceData(); }
/// <summary> /// This constructor is used by the class internally to create new instances when a thread /// becomes blocked by a user code callback. /// </summary> private TaskWorkerThread ( TaskExecutionModule parentModule, ManualResetEvent exitTaskThreads, ExitTaskCache exitTaskThreadsCache, Queue<TaskWorkerThread> workerThreadQueue, Hashtable handleIdToWorkerThread, Queue<TaskExecutionState> workItemQueue, ManualResetEvent workItemInsertionEvent, Hashtable waitingTasks, bool profileExecution ) { this.parentModule = parentModule; this.exitTaskThreads = exitTaskThreads; this.exitTaskThreadsCache = exitTaskThreadsCache; this.workerThreadQueue = workerThreadQueue; this.handleIdToWorkerThread = handleIdToWorkerThread; this.workItemQueue = workItemQueue; this.workItemInsertionEvent = workItemInsertionEvent; this.waitingTasks = waitingTasks; this.profileExecution = profileExecution; InitializePerInstanceData(); }