2009-04-15 4 views
2

다른 시점에 다양한 비동기 작업을 예약 할 수 있어야하는 C# 프로그램을 개발 중입니다. 태스크 실행을 확인하기 위해 매초마다 활성화하는 솔루션이 필요하며 가능한 한 적은 리소스를 사용합니다. 또한 많은 수의 작업에 맞게 확장해야합니다. 이 중 어느 것을 사용하는 것이 더 좋을까요? 후 1 초 인용 별도의 스레드를 사용하여 작업을 실행하는 경우, 또는C#에서 작업을 예약하는 가장 좋은 방법

2) 트리거 1 초 경과 시간을 가진 System.Timers.Timer 객체를 사용

1) 작업 할 때 실행 깨어나거나

3) 완전히 다른 것.

답변

6

System.Threading.Timer은 매우 가볍습니다. 각 작업에 대해 별도의 타이머를 만들어서 작업이 실행되기 때문에 타이머가 오게 할 수 있습니다.

내부적으로, 나는 시스템이 어떤 타이머가 다음에 만기인지를 추적 할 것이므로 주어진 시간 (source/similar question)에서 하나의 타이머 만 모니터링하면된다고 생각합니다.

+0

비슷한 질문에 대한 참조가 추가되었습니다. –

관련 문제