コード例 #1
0
        static void Main(string[] args)
        {
            var taskManager = new TaskManagerImpl();

            taskManager.StartTasksAsync();


            var highTask1 = new UserTaskBase("High priority Task1", TaskPriorities.High, (object obj) =>
            {
                Console.WriteLine(obj as string);
                Thread.Sleep(2000);
            });

            highTask1.Start += (sender, e) =>
            {
                Console.WriteLine($"Start event handler result: {e.Obj.ToString()}");
            };

            var highTask2 = new UserTaskBase("Very High priority Task2", TaskPriorities.VeryHigh, (object obj) =>
            {
                Console.WriteLine(obj as string);
                Thread.Sleep(2000);
            });

            highTask2.Stop += (sender, e) =>
            {
                Console.WriteLine($"Stop event handler result: {e.Obj.ToString()}");
            };

            var lowTask = new UserTaskBase("Low priority Task", TaskPriorities.Low, (object obj) =>
            {
                Console.WriteLine(obj as string);
                Thread.Sleep(2000);
            });

            taskManager.AddTask(highTask1);
            taskManager.AddTask(lowTask);
            taskManager.AddTask(highTask2);



            highTask2 = new UserTaskBase("Very High priority Task1", TaskPriorities.VeryHigh, (object obj) =>
            {
                Console.WriteLine(obj as string);
                Thread.Sleep(2000);
            });

            taskManager.AddTask(highTask2);

            Console.WriteLine("Press Enter to continue...");
            Console.ReadLine();
        }
コード例 #2
0
        public void TestMethod1()
        {
            Action <Object> r = (obj) =>
            {
                Thread.Sleep(5000);
            };

            //var task = new Task(r);
            ITaskManager taskManager = new TaskManagerImpl();

            var task = new UserTaskBase("Main Task", TaskPriorityUtil.High, r);

            taskManager.AddTask(task);


            //task.CreationOptions
        }