public void sendRequest(int id) { procEventArgs ev = new procEventArgs(); ev.id = id; OnProc(ev); }
public void proc(object sender, procEventArgs e) { lock (threadLock) { Console.WriteLine("Заявка с номером: {0}", e.id); requestCount++; for (int i = 0; i < n; ++i) { if (pool[i].in_use == false) { pool[i].wait++; } } for (int i = 0; i < n; i++) { if (!pool[i].in_use) { pool[i].count++; pool[i].in_use = true; pool[i].thread = new Thread(new ParameterizedThreadStart(Answer)); pool[i].thread.Start(e.id); processedCount++; return; } } rejectedCount++; } }
protected virtual void OnProc(procEventArgs e) { request?.Invoke(this, e); }