ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ : Я не знаю эти классы Java, здесь я получаю удар в темноте.
В C # у вас есть оператор lock
(я думаю, это что-то вроде оператора synchronized
в Java), который может блокировать любой объект. Я полагаю, что использование этого оператора или Monitor.Enter(obj)
и Monitor.Exit(obj)
будет немного похоже на ReentrantLock.
Есть два класса с именами ManualResetEvent
и AutoResetEvent
. Эти классы имеют метод Wait
и метод Set
, который, как я полагаю, похож на сигнал Condition и ожидает. Разница между этими двумя классами заключается в том, что ManualResetEvent
остается установленным (больше никого не блокирует) и должно быть Reset
. И AutoResetEvent
- как и предполагает его название - автоматически сбрасывается.