示例#1
0
        public static void Main(string[] args)
        {
            var run = true;
            var coroutineManager = new CoroutineManager();
            var container        = coroutineManager.CreateContainer();

            container.StartCoroutine(MainLoop());

            IEnumerable MainLoop()
            {
                yield return(IsPrimeAsync(1).With <bool>(out var a));

                Console.WriteLine(a); // true

                yield return(IsPrimeAsync(2).With <bool>(out var b));

                Console.WriteLine(b); // true

                yield return(IsPrimeAsync(100).With <bool>(out var c));

                Console.WriteLine(c); // false

                run = false;
            }

            while (run)
            {
                coroutineManager.OneLoop();
            }
        }
示例#2
0
        public static void Main(string[] args)
        {
            var coroutineManager = new CoroutineManager();

            Container = coroutineManager.CreateContainer();

            Container.StartCoroutine(MainLoop);
            while (true)
            {
                coroutineManager.OneLoop();
                Thread.Sleep(10);
            }
        }
示例#3
0
 public void Before()
 {
     TimerManager       = new TimerManager(DateTime.Now);
     CoroutineManager   = new CoroutineManager();
     CoroutineContainer = CoroutineManager.CreateContainer();
 }