public void Dispatcher(ICoroutineUnit unit) { if (unit != null) { var newid = System.Threading.Interlocked.Increment(ref id); CoroutineUnitBag bag = new CoroutineUnitBag(newid, unit); var work = works[newid % workthreads]; work.Add(bag); } }
public CoroutineUnitBag(long id, ICoroutineUnit cunit) { Id = id; CUnit = cunit; }