Exemple #1
0
        private void dodajZadanieToolStripMenuItem_Click(object sender, EventArgs e)
        {
            configuration = new PasswordTaskConfigurationForm();
            if (configuration.ShowDialog(this) != DialogResult.OK)
            {
                return;
            }

            if (server == null)
            {
                startToolStripMenuItem.Enabled = true;
                toolStripButtonUruchom.Enabled = true;
            }

            TaskManager manager = new TaskManager();

            manager.Dispatcher = configuration.GetDispatcher();
            manager.Mode       = configuration.GetMode();

            scheduler.Add(manager);

            listItem     = new ListViewItem(manager.GetHashCode().ToString());
            listItem.Tag = manager;

            itemZadania  = new ListViewItem.ListViewSubItem(listItem, "0");
            itemAktywne  = new ListViewItem.ListViewSubItem(listItem, "0");
            itemWykonane = new ListViewItem.ListViewSubItem(listItem, "0");
            itemProcent  = new ListViewItem.ListViewSubItem(listItem, "0");
            itemSzybkosc = new ListViewItem.ListViewSubItem(listItem, "0");
            itemStatus   = new ListViewItem.ListViewSubItem(listItem, "");
            itemMode     = new ListViewItem.ListViewSubItem(listItem, manager.Mode.ToString());

            listItem.SubItems.Add(itemZadania);
            listItem.SubItems.Add(itemAktywne);
            listItem.SubItems.Add(itemWykonane);
            listItem.SubItems.Add(itemProcent);
            listItem.SubItems.Add(itemSzybkosc);
            listItem.SubItems.Add(itemStatus);
            listItem.SubItems.Add(itemMode);

            listView.Items.Add(listItem);
            configuration = null;
            UpdateListView("...");
        }
        public void TaskScheduler_UnitTest5()
        {
            Action <Robot> periodicAction   = new Action <Robot>((Robot robotState) => { });
            PeriodicTask   slowPeriodicTask = new PeriodicTask(thePeriodicAction: periodicAction, thePeriod: 100, theName: "slowPeriodicTask");

            TaskScheduler scheduler = new TaskScheduler(new Robot());

            scheduler.Add(slowPeriodicTask);

            scheduler.Start(asyncExecution: true);

            int expectedElapsedTime = 2134;

            Thread.Sleep(expectedElapsedTime);

            scheduler.Stop();

            // Test di uguaglianza con tolleranza di 5 millisecondi
            Assert.AreEqual(expectedElapsedTime, scheduler.ElapsedTime, 5);
        }
Exemple #3
0
        public void TaskTest()
        {
            TaskScheduler taskScheduler = new TaskScheduler();

            taskScheduler.Start   += (x, y) => _logger.Info("task", "Start:" + y.Task.Key);
            taskScheduler.Execute += (x, y) => _logger.Info("task", "Execute:" + y.Task.Key);
            taskScheduler.Stoped  += (x, y) => _logger.Info("task", "Stoped:" + y.Task.Key);

            for (int i = 0; i < 100; i++)
            {
                int             i1       = i;
                Action <object> action   = x => _logger.Debug("task", i1 + "-->" + (System.DateTime.Now - (DateTime)x).ToString());
                DateTime        dateTime = System.DateTime.Now.AddSeconds(i);
                Task            task     = new Task(dateTime, action);
                task.Obj           = System.DateTime.Now;
                task.TaskCycleType = CycleType.Once;
                taskScheduler.Add("test" + i, task);
                //Thread.Sleep(300);
            }
            //taskScheduler.Run("test");
            taskScheduler.RunAllTask();
        }
        //-----------------------------------------------------------------------------

        public void AddScheduledTask(RebirthTask task) => m_pScheduler.Add(task);