2009-11-07 1 views
1

특정 간격으로 실행되도록 예약 할 수있는 사용자 정의 .NET 코드를 호출 할 수있는 Windows 서비스 구현이 있습니까?.NET 서비스를 기반으로 한 스케줄러를 구현하는 프로젝트가 있습니까?

아니면 내가 (나는 현재 일을하고있는) 내 자신을 구현해야합니다,하지만 난 바퀴 : 내가 Windows Task Scheduler을 사용하지 않으

를 재발견하지 않는 것이 좋습니다 생각합니다.

+0

왜 Windows 스케줄러를 사용하지 않으시겠습니까? 스케줄러가 지금까지 언급 한 요구 사항을 충족 시킨다면 더 많은 설명이 도움이 될 것입니다. –

+0

Windows 작업 스케줄러를 사용하지 않는 이유를 말씀해 주시겠습니까? 이유는 좋은 대답을 제공하기위한 좋은 의견이 될 수 있습니다. –

+0

지정된 간격으로 응용 프로그램을 실행하려고하거나 함수를 호출하려고하면 약간 혼란 스럽습니다. – jheddings

답변

3

주기적으로 함수를 호출하려는 경우 System.Threading.Timer을 사용하십시오. 이것을 사용하면 선택한 간격으로 원하는 작업을 수행하는 간단한 서비스를 작성하는 것이 쉽습니다.

예약 작업을위한 좋은 라이브러리는 Quartz.NET입니다. 독립 실행 형 응용 프로그램으로 실행하거나 자체 응용 프로그램의 일부로 실행할 수 있습니다. 그것은 많은 기능과 함께 매우 좋은 API를 가지고 있습니다. 또한 시작하기위한 자습서가 있습니다. 이것은 Java Quartz 스케줄링 프레임 워크의 포트입니다.

Windows 스케줄러로 교체하려는 경우 VisualCron을 사용해보십시오. 무료는 아니지만 많은 기능이 있습니다.

+1

실제로 나는 지금 당장 하나의 글을 쓰는 중입니다 만, 가능하다면 오픈 소스 프로젝트를 사용하는 것이 더 좋을 것이라고 생각했습니다. – Karim

+0

Quartz.NET을 포함하도록 답변이 업데이트되었습니다. 확실히 그것을 확인하십시오. – jheddings

+0

quartz.net은 훌륭하지만 내 요구에 너무 복잡합니다. 그래서 나는 내 자신의 스케줄링 서비스를 구현할 것입니다 :) – Karim

0

고유 한 Windows 서비스 응용 프로그램을 개발하는 것이 좋습니다. Visual Studio로 많은 노력을 기울여서는 안됩니다. MSDN 또는 웹에서 샘플 응용 프로그램을 찾을 수 있습니다.

+0

고급 스케줄링 타이밍 옵션을 처리해야하므로 실제로는 그리 쉽지 않습니다. 매시간 07을 실행하고 10 분 동안 반복하는 등 – Karim

+0

http://research.microsoft.com/en-us/projects/Dryad/ 도움이 될만한 질문이 있습니다. – Saar

관련 문제