UnityThreading.TaskWorker.Do C# (CSharp) Method

Do() protected method

protected Do ( ) : IEnumerator
return IEnumerator
        protected override IEnumerator Do()
        {
            while (!exitEvent.InterWaitOne(0))
            {
                if (!Dispatcher.ProcessNextTask())
                {
                    TaskDistributor.FillTasks(Dispatcher);
                    if (Dispatcher.TaskCount == 0)
                    {
                        var result = WaitHandle.WaitAny(new WaitHandle[] { exitEvent, TaskDistributor.NewDataWaitHandle });
                        if (result == 0)
                            return null;
                        TaskDistributor.FillTasks(Dispatcher);
                    }
                }
            }
            return null;
        }