Пример #1
0
        /// <summary>
        /// Waits the state of for thread.
        /// </summary>
        /// <param name="state">The state.</param>
        /// <param name="mSec">The m sec.</param>
        /// <returns></returns>
        public bool WaitForThreadState(BaseThreadState state, int mSec)
        {
            if (mSec != 0)
            {
                long sleep = mSec;
                while (sleep > 0 || mSec == Timeout.Infinite)
                {
                    if (ThreadState == state)
                    {
                        break;
                    }

                    Thread.Sleep(100);
                    sleep -= 100;
                }
            }

            return(ThreadState == state);
        }
Пример #2
0
        /// <summary>
        /// Waits the state of for worker on.
        /// </summary>
        /// <param name="worker">The worker.</param>
        /// <param name="state">The state.</param>
        /// <param name="waitmsec">The waitmsec.</param>
        /// <returns></returns>
        protected bool WaitForWorkerOnState(IBaseWorker worker, BaseThreadState state, int waitmsec)
        {
            if (waitmsec != 0)
            {
                long sleep = waitmsec;
                while ((sleep > 0 || waitmsec == Timeout.Infinite) && !_terminated)
                {
                    if (worker.ThreadState == state)
                    {
                        break;
                    }

                    PassiveSleep(100);
                    sleep -= 100;
                }
            }

            return(ThreadState == state);
        }