Example #1
0
 public SleepData(Microthread thread, long sec)
 {
     Thread = thread;
     _time = DateTime.Now.Ticks + sec*10000000;
 }
Example #2
0
 /// <summary>
 /// 해당 index에 맞는 Worker Thread에서 Microthread를 시작하는 메소드
 /// </summary>
 /// <param name="index">작업구분을 위한 index</param>
 /// <param name="microthread">시작할 Microthread</param>
 public static void RunMicrothread(int index, Microthread microthread)
 {
     _schedulers[index%_schedulers.Length].RunMicrothread(microthread);
 }
Example #3
0
 public Microthread(Func<IEnumerator<IYield>> func, Microthread parent = null)
 {
     _func = func;
     _parent = parent;
 }
Example #4
0
 /// <summary>
 /// Microthread를 시작하는 메소드
 /// </summary>
 /// <param name="microthread">시작할 Microthread</param>
 public void RunMicrothread(Microthread microthread)
 {
     QueueWorkItem(() => microthread.Run(this));
 }