static void Main(string[] args) { //Console.CancelKeyPress += Console_CancelKeyPress; //_handler += new EventHandler(Handler); SetConsoleCtrlHandler(ShutdownHandler, true); //AppDomain.CurrentDomain.DomainUnload += CurrentDomain_DomainUnload; using (ts = new TimerServer()) { var worker = ts.StartWorkersAsync(); try { //while (true) Task.Delay(100).Wait(); // infinity loop, 在 windows container 的 daemon mode 下, ReadLine() 會讀取 STDIN 失敗 w.WaitOne(); } finally { //ts.StopWorkers(); _logger.Info("stop workers..."); worker.Wait(); _logger.Info("worker stopped."); } } }