Exemplo n.º 1
0
 private void SplitWorkload(Workload ActiveWorkload, Worker Owner)
 {
     while (ActiveWorkload.HasWorkToDo)
     {
         foreach (Worker ActiveWorker in ListActiveWorker)
         {
             if (ActiveWorker == Owner)
             {
                 continue;
             }
             else if (ActiveWorker.IsAlive())
             {
                 ActiveWorker.AddWork(ActiveWorkload.PullWork());
             }
         }
     }
 }
Exemplo n.º 2
0
        private void btnConnect_Click(object sender, EventArgs e)
        {
            btnConnect.Enabled = false;
            gbWorkload.Enabled = true;

            ActiveWorker = ArrayWorkerChoice[cbWorkerType.SelectedIndex];

            Workload AllWorkload = ActiveWorker.GetAllPossibleWorkload();

            while (AllWorkload.HasWorkToDo)
            {
                string Work = AllWorkload.PullWork();
                tvAvailableWorkload.Nodes.Add(Work);
            }

            Server.AddWorker(ActiveWorker);

            if (Server.IsWorking)
            {
                ActiveWorker.StartWorking();
            }
        }