コード例 #1
0
ファイル: WaitHelper.cs プロジェクト: chenmj201601/UMP
        /// <summary>
        /// 向集合中插入一个等待对象
        /// </summary>
        /// <param name="waitObject">等待对象</param>
        public static void InsertWaitObject(WaitObject waitObject)
        {
            var temp = ListWaitObject.FirstOrDefault(w => w.Name == waitObject.Name);

            if (temp != null)
            {
                ListWaitObject.Remove(temp);
            }
            waitObject.Result     = false;
            waitObject.IsFinished = false;
            ListWaitObject.Add(waitObject);
        }
コード例 #2
0
ファイル: WaitHelper.cs プロジェクト: chenmj201601/UMP
 /// <summary>
 /// 执行等待操作,即阻塞当前线程,直到指定等待对象的IsFinished属性为true
 /// </summary>
 /// <param name="waitObject">等待对象</param>
 public static void DoWaitObject(WaitObject waitObject)
 {
     mCount = 0;
     while (true)
     {
         if (waitObject.IsFinished || mCount > MaxTime)
         {
             break;
         }
         mCount++;
         Thread.Sleep(1000);
     }
 }