建议在每个特定时间段运行程序

时间:2010-11-16 14:09:48

标签: .net scheduled-tasks

有一个程序可以抓取并索引存储在SharePoint中的文档。我需要每一段时间运行它。我们提出了一些建议:

  • 将应用程序转移到Windows服务中并将其安排在每个时段运行。
  • 拥有一个程序,可以在每个时间段触发此应用程序。

您认为哪两种方式更有效率。任何其他建议都非常受欢迎。谢谢。

3 个答案:

答案 0 :(得分:6)

使用Windows的 Task Scheduler

答案 1 :(得分:3)

如果您的程序足够简单,我会使用Windows的任务计划程序定期运行它(您的选项#2)。没有必要为此编写Windows服务。

答案 2 :(得分:1)

您可以使用DOS“AT”命令安排任务运行。

The AT command schedules commands and programs to run on a computer at
a specified time and date. The Schedule service must be running to use
the AT command.

AT [\\computername] [ [id] [/DELETE] | /DELETE [/YES]]
AT [\\computername] time [/INTERACTIVE]
    [ /EVERY:date[,...] | /NEXT:date[,...]] "command"

\\computername     Specifies a remote computer. Commands are scheduled on the
                   local computer if this parameter is omitted.
id                 Is an identification number assigned to a scheduled
                   command.
/delete            Cancels a scheduled command. If id is omitted, all the
                   scheduled commands on the computer are canceled.
/yes               Used with cancel all jobs command when no further
                   confirmation is desired.
time               Specifies the time when command is to run.
/interactive       Allows the job to interact with the desktop of the user
                   who is logged on at the time the job runs.
/every:date[,...]  Runs the command on each specified day(s) of the week or
                   month. If date is omitted, the current day of the month
                   is assumed.
/next:date[,...]   Runs the specified command on the next occurrence of the
                   day (for example, next Thursday).  If date is omitted, the
                   current day of the month is assumed.
"command"          Is the Windows NT command, or batch program to be run.