Example #1
0
        private void btnRunWork_Click(object sender, EventArgs e)
        {
            if (_HardWork == null)
            {
                _HardWork = new HardWork();
            }
            else
            {
                _HardWork.Stop();
                _HardWork = null;
            }

            btnRunWork.Checked = _HardWork != null;
        }
Example #2
0
 void Work(HardWork hard)
 {
     while (true)
     {
         Socket socket = null;
         lock (locker)
             if (tasks.Count > 0)
             {
                 socket = tasks.Dequeue();
                 if (socket == null)
                 {
                     return;
                 }
             }
         if (socket != null)
         {
             hard(socket);
         }
         else
         {
             wh.WaitOne();
         }
     }
 }
Example #3
0
 public Worker(HardWork hard)
 {
     worker = new Thread(() => Work(hard));
     worker.Start();
 }