Я хотел бы создать некоторый метод, который будет использоваться общим способом, если бы он блокировал (если не истекает определенный тайм-аут) до тех пор, пока не будет выполнено заданное условие.
Использование в коде было бы похоже на:
WaitUntil( condition );
Я попытался реализовать его, используя цикл While (..), однако это кажется пустой тратой.
В текущей реализации я инициализирую "одноразовый" таймер, который истекает в TIMEOUT. Я запускаю цикл while и проверяю, был ли таймер отключен или нет, выбрасывая исключение, если это произошло.
Существуют ли какие-либо простые, но эффективные методы для реализации такого метода?