相关疑难解决方法(0)

在定时器的回调方法中抛出异常

我无法在任何地方找到这个问题的答案......

System.Threading.Timer的回调方法(或在System.Timers.Timer的事件处理程序中)抛出的异常会发生什么.异常是否传播到创建计时器的线程或异常丢失?

在计时器的回调函数中抛出异常有什么副作用?

什么是向计时器的创建线程发信号通知工作线程(回调方法)中的异常被抛出的正确方法?

谢谢你的时间.

c# multithreading exception timer backgroundworker

32
推荐指数
1
解决办法
1万
查看次数

用于维护任务的Windows服务或任务计划程序?

我有一个C#应用程序,它执行一些维护任务.它需要大约每小时运行一次,但如果它有点偏差则不太重要.它必须在没有用户登录的Win2003服务器上运行.

基本上我想知道我是否应该写一个Windows服务,如果是的话,如果Thread.Sleep()是一个暂停线程一小时的正确方法,或者是否有更好的方法来确保线程保持空闲并且不放任何服务器负载?(又名.与Spinlock最相反的是什么)

另一种选择是Windows任务计划程序,但我不确定这是否适合服务器使用,因为a)我必须将计划存储在其中,而不是存储在我的app.config中,b)我无法轻易控制服务启动/停止/重启c)我不知道Windows用户的凭据是否与在Service MMC Snapin中输入时一样安全.

你有什么看法?拥有空闲服务是否可能有用,或者您是否建议使用任务调度程序?

windows-services windows-server-2003

6
推荐指数
2
解决办法
7951
查看次数