コード例 #1
0
ファイル: EngineConcurrency.cs プロジェクト: neismit/emds
 internal void TaskFinished(PoolItem poolItem)
 {
     lock (this)
     {
         _activeTasks--;
     }
 }
コード例 #2
0
ファイル: EngineConcurrency.cs プロジェクト: neismit/emds
 internal void x88dff5165154bb1d(PoolItem x0423154fd82dd270)
 {
     lock (this)
     {
         this._x16f1ed41ac673568--;
     }
 }
コード例 #3
0
ファイル: EngineConcurrency.cs プロジェクト: neismit/emds
 /// <summary>
 /// Process the specified task.  It will be processed either now,
 /// or queued to process on the thread pool.
 /// </summary>
 /// <param name="task">The task to process.</param>
 /// <param name="group">The group this task belongs to.</param>
 public void ProcessTask(IEngineTask task, TaskGroup group)
 {
     lock (this)
     {
         _activeTasks++;
     }
     if (group != null)
         group.TaskStarting();
     var item = new PoolItem(this, task, group);
     ThreadPool.QueueUserWorkItem(item.ThreadPoolCallback);
 }
コード例 #4
0
ファイル: EngineConcurrency.cs プロジェクト: neismit/emds
 public void ProcessTask(IEngineTask task, TaskGroup group)
 {
     lock (this)
     {
         this._x16f1ed41ac673568++;
         if (group != null)
         {
             group.TaskStarting();
             if (0 != 0)
             {
                 return;
             }
         }
     }
     PoolItem item = new PoolItem(this, task, group);
     ThreadPool.QueueUserWorkItem(new WaitCallback(item.ThreadPoolCallback));
 }