Пример #1
0
 public SlaveTask(PluginManager pluginManager, int coresNeeded, ILog log) {
   this.pluginManager = pluginManager;
   this.coresNeeded = coresNeeded;
   this.log = log;
   waitForStartBeforeKillSem = new Semaphore(0, 1);
   executorMonitoringRun = true;
   IsPrepared = false;
 }
Пример #2
0
    public Core() {
      var log = new ThreadSafeLog(SlaveCore.Properties.Settings.Default.MaxLogCount);
      this.pluginManager = new PluginManager(WcfService.Instance, log);
      this.taskManager = new TaskManager(pluginManager, log);
      log.MessageAdded += new EventHandler<EventArgs<string>>(log_MessageAdded);

      RegisterTaskManagerEvents();

      this.configManager = new ConfigManager(taskManager);
      ConfigManager.Instance = this.configManager;
    }
Пример #3
0
    public TaskManager(PluginManager pluginCache, ILog log) {
      this.pluginManager = pluginCache;
      this.log = log;
      this.slaveTasks = new Dictionary<Guid, SnapshotInfo>();

      cts = new CancellationTokenSource();
      ct = cts.Token;
      waitHandle = new AutoResetEvent(true);
      wcfService = WcfService.Instance;
      checkpointInterval = Settings.Default.CheckpointInterval;
      checkpointCheckInterval = Settings.Default.CheckpointCheckInterval;

      System.Threading.Tasks.Task.Factory.StartNew(Checkpointing, ct);
    }