Тайм-ауты .Net: WaitForSingleObject против таймера

Я реализую тайм-аут для асинхронной операции (серии сетевых операций ввода-вывода), и я не уверен, какая из них лучше (с точки зрения распределения / производительности): создание EventWaitHandle и использование RegisterWaitForSingleObject или просто создание Timer и используя свой тик.

В моем конкретном случае EventWaitHandle создается лениво, но, очевидно, его нужно создать, чтобы использовать WaitForSingleObject. Так что на самом деле это вопрос о стоимости ресурсов WaitHandle + WaitForSingleObject против Timer. Оба подхода примерно так же легко реализовать.

Я реализовал оба в разное время, поэтому я понимаю ландшафт, я просто не уверен, какой подход «лучше».

Ответы на вопрос(2)

Ваш ответ на вопрос