public void processSingle(SingleDelegate singleDelegate) { lock (this) { mutex.WaitOne(); //申请锁 singleDelegate(); //执行外部操作 mutex.ReleaseMutex(); //释放锁 } }
//Инициализирует конкретную функцию расчета protected override void CreateDelegate(string funName) { SingleCalculate = (SingleDelegate)Delegate.CreateDelegate(typeof(SingleDelegate), this, funName); }
protected SingleFunction(SingleDelegate deleg) { SingleCalculate = deleg; }