Пример #1
0
        public bool CreateRunner(PtiRunTask runTask)
        {
            if (string.IsNullOrWhiteSpace(runTask.PtiTasker.RunCmd))
            {
                runTask.PtiTasker.RunCmd = runTask.PtiApp.DefaultRunCmd;
            }
            PtiRunner runner = new PtiRunner(runTask.PtiTasker, runTask.PtiApp);

            this.RunnerList.Add(runner);
            runTask.Runner = runner;
            return(true);
        }
Пример #2
0
        public bool CreateAndStart(PtiRunTask runTask)
        {
            var _old = this.RunnerList.Where(r => r.TaskInfo._id == runTask.PtiTasker._id).FirstOrDefault();

            if (!runTask.PtiTasker.MultiRunner && _old != null && _old?.State == ProcessState.RUNNING)
            {
                return(true);
            }
            this.CreateRunner(runTask);
            runTask.LastRunDate           = DateTime.Now;
            runTask.PtiTasker.LastRunDate = runTask.LastRunDate;
            runTask.PtiTasker.TaskState   = TaskState.RUNNING;
            runTask.PtiApp.LastRunDate    = runTask.PtiTasker.LastRunDate;
            runTask.Logger = runTask.Runner.Logger;
            runTask.Runner.Run();
            return(true);
        }