//------------------------------------------------------------ // request work //------------------------------------------------------------ public void RequestWork(System.Action <ThreadManager.Job> callback = null) { lock (m_SyncObj) { var job = new ThreadManager.Job(callback); m_JobList.Add(job); } Debug.Log("request job."); }
//------------------------------------------------------------ // thread loop //------------------------------------------------------------ private void threadWork2() { while (true) { Thread.Sleep(0); var job = new ThreadManager.Job(); Debug.Log("new job created"); job.LoopCount(); // job work job.IsEnd = true; Debug.Log("job end"); lock (m_SyncObj) { randomnum = cRandom.Next(); } } }