비동기 작업 (일련의 네트워크 IO)에 대한 시간 제한을 구현하고 있는데, 할당/성능 측면에서 '더 나은'것이 확실하지 않습니다. EventWaitHandle 및 RegisterWaitForSingleObject를 사용하거나 타이머를 만들고 Tick을 사용합니다..Net 시간 초과 : WaitForSingleObject 대 타이머
특정 경우에 EventWaitHandle은 게으르며 생성되지만 분명히 WaitForSingleObject를 사용하려면 인스턴스화해야합니다. 그래서 이것은 WaitHandle + WaitForSingleObject 대 Timer의 자원 비용에 대한 질문입니다. 두 가지 방법 모두 구현하기가 쉽습니다.
나는 다양한 시간에 두 가지를 구현했기 때문에 지형을 이해할 수 있으며 어떤 방법이 '더 나은'것인지 확실하지 않습니다.
블로그 기사의 사용법을 잘 비교하지만 다른 하나를 선호하는 것은 매우 강력하지는 않습니다. 그리고 그것에 대해 더 많이 생각할수록, 커널 전환 등의 관점에서 차이를 볼 수 없었습니다. 나는 여전히 기본 Win32 API에 비용 차이가 있었는지 알고 싶지만 .NET 구현의 '가중치'는 내가 찾은 최고의 대답처럼 보입니다. – piers7