void runTask(object s, ElapsedEventArgs e) { Thread.CurrentThread.Priority = ThreadPriority.AboveNormal; log($"Monitoring the system: {Thread.CurrentThread.Priority}"); SetThreadExecutionState(_ES.ES_SYSTEM_REQUIRED | _ES.ES_CONTINUOUS); //if (DateTime.Now.DayOfWeek != DayOfWeek.Friday) return; //if (DateTime.Now.Hour < 19) return; if (MyTask.Running) { return; } try { log($"MyTask.Run()..."); _timer.Stop(); MyTask.Run(log); } finally { log($"SystemStorage timer start()"); _timer.Start(); } }//
void OnStart() { log($"entering OnStart()..."); // Set up a timer that triggers every minute. var timer = new System.Timers.Timer(); timer.Interval = 5000; timer.Elapsed += new ElapsedEventHandler(work); timer.Start(); log($"...exiting OnStart()"); void work(object s, ElapsedEventArgs e) { log($"u1={MyTask.getUserName()}, u2={MyTask.getUser2()}"); log($"Monitoring the System"); if (!MyTask.Running) { try { log($"{nameof(MyTask)}.Run()..."); timer.Stop(); MyTask.Run(log, @"..\..\..\TestDir"); } finally { log($"SystemStorage tiemr restart()..."); timer.Interval = 20000; timer.Start(); } } } }
static async Task Main(string[] args) { DateTime dateTime = DateTime.Now; var dateTimeStr = dateTime.ToString(); System.Console.WriteLine(dateTimeStr); var myTask = MyTask.Run(() => DateTime.Now); var myStrTask = MyTask.Run(() => myTask.Result.ToString()); var print = MyTask.Run(() => Console.WriteLine(myStrTask.Result)); // Console.WriteLine("Hello World!"); bool run = true; Console.ForegroundColor = ConsoleColor.Green; Random r = new Random(); MyTask task = new MyTask(() => { while (run) { Console.Write(r.Next(0, 9)); } }); task.Start(); task.Wait(500); run = false; Console.ReadLine(); }
public MyTask <(int, int)> HelloInt(int a) { Logger.Debug($"server: recv helloint {a}"); MyTask.Run(async delegate(object o) { var(c, d) = await CallAsync.GetRpc <ICHelloService>().HelloInt(1); Logger.Debug($"recv client a: {c}, b: {d}"); }, null); return(MyTask.FromResult((a, a))); }
static void Main(string[] args) { Logger.Trace("Hello"); for (int i = 0; i < 1; ++i) { Task.Run(StartClient); } Console.ReadKey(); #if false ISerializer serializer = new Serializer(); s_callAsync = new CallAsync("127.0.0.1", 1234, Cool.Interface.NetWork.NetType.TCP); ClientTest.CHelloService cHelloService = new ClientTest.CHelloService(); cHelloService.Serializer = serializer; cHelloService.CallAsync = s_callAsync; cHelloService.ChunkType = (int)ChunkType.BASE; s_CHelloServiceHandlers = new ICHelloService_HandlerMap(cHelloService); s_sHelloService = new CSRPC.SHelloService(serializer, s_callAsync); s_sHelloService.ChunkType = (int)ChunkType.BASE; while (true) { if (Console.KeyAvailable) { if (Console.ReadKey().Key == ConsoleKey.Spacebar) { s_sHelloService.Hello(); MyTask.Run(async delegate(object state) { var(a, b) = await s_sHelloService.HelloInt(1); CoolLog.WriteLine($"a:{a}, b:{b}"); //return null; }, null); } else if (Console.ReadKey().Key == ConsoleKey.A) { } } if (s_callAsync != null) { s_callAsync.Update(); } } #endif }
private static void MakeCharacter(int employeeId) { Console.WriteLine($"{employeeId}さんの課題"); Console.WriteLine("-------------------"); switch (employeeId) { case 92: break; case 667: ITask task = new MyTask(); task.Run(); break; default: throw new ArgumentNullException($"{employeeId}さんの課題は存在しません。"); } }
static async Task StartClient() { ISerializer serializer = new Serializer(); ICallAsync callAsync = new CallAsync("127.0.0.1", 1234, Cool.Interface.NetWork.NetType.TCP); callAsync.AddRpcHandlers <ICHelloService>(new CHelloService()); while (true) { await Task.Delay(10); MyTask.Run(RunRequest, callAsync); if (callAsync != null) { callAsync.Update(); } } }
static void Main(string[] args) { Logger.Info("Hello World!"); AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException; TaskScheduler.UnobservedTaskException += TaskScheduler_UnobservedTaskException; CustomTaskScheduler scheduler = new CustomTaskScheduler(); MySynchronizationContext context = new MySynchronizationContext(); //SynchronizationContext.SetSynchronizationContext(context); //Task.Factory.StartNew(Hello, "A:", new CancellationToken(), TaskCreationOptions.None, scheduler); //Task.Factory.StartNew(Hello, "B:", new CancellationToken(), TaskCreationOptions.None, scheduler); //Task.Factory.StartNew(Hello, "C:", new CancellationToken(), TaskCreationOptions.None, scheduler); Task.Factory.StartNew(Hello, "PoolA:", new CancellationToken(), TaskCreationOptions.None, TaskScheduler.Default); //Task.Factory.StartNew(Hello, "PoolB:", new CancellationToken(), TaskCreationOptions.None, TaskScheduler.Default); //Task.Factory.StartNew(Hello, "PoolC:", new CancellationToken(), TaskCreationOptions.None, TaskScheduler.Default); //Hello("E"); MyTask.Run(HelloMyTask, "I"); //MyTask.Run(HelloMyTask2, "有返回值:"); Log("Main"); while (Console.KeyAvailable == false) { GC.Collect(); GC.WaitForPendingFinalizers(); scheduler.Update(); //myTaskScheduler.Update(); s_WaitOneFrameTasks.Update(); //context.Update(); } ref StructA a = ref alist[0];
public static void Main(string[] args) { MyTask task = new MyTask(); // Most methods that call a SWI throw an OS.ErrorException if the // SWI returns an error. try { task.Init(); task.Run(); } catch (OS.ErrorException ex) { Reporter.WriteLine(ex.OSError.Message); Console.WriteLine("error number = {0}, error string = {1}", ex.OSError.Number, ex.OSError.Message); } finally { task.CloseDown(); } }
//服务端调用 public void EnterScene(int sceneID) { MyTask.Run(_EnterScene(sceneID)); }