Я знаю, что вы можете заблокировать объект в С#, используя блокировку, но можете ли вы отказаться от блокировки и подождать, пока что-то еще уведомит вас о том, что он изменился, как вы можете в java с ожиданием и уведомлением?
Мне кажется, что синхронизация и блокировка в java и c# соответственно — синонимы.