コード例 #1
0
        /// <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();
        }
コード例 #2
0
ファイル: TaskWorkerThread.cs プロジェクト: nikson/msbuild
        /// <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();
        }