1
我有一个WCF服务应用程序项目与一个REST服务,它的InstanceContextMode设置为单一。它包含一个我想用来定期检查注册的计时器。WCF服务应用程序定时器
定时器不会启动,直到有人第一次呼叫该服务为止。我想知道的是,ASP.NET网站中是否存在某种类似的超时,如果没有人使用它,或者定时器继续运行,IIS将停止服务。
[ServiceContract]
public interface IRegistrationService
{
[OperationContract, WebGet...]
void Register(...);
}
[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)]
public class RegistrationService : IRegistrationService
{
private Timer timer;
public RegistrationService()
{
this.timer = new System.Timers.Timer(1000 * 60 * 5);
this.timer.Elapsed += OnTimerElapsed;
this.timer.Start();
}
private void OnTimerElapsed(object sender, ElapsedEventArgs e)
{
//
}
}
我的服务托管在IIS中。我使用称为TSOHost的第三方托管,我认为他们使用IIS7,显然Keep-Alive默认启用,但我不能说我记得在我的主机配置页面看到这个设置。谢谢,我会检查这是否启用。 – sfsdfsdf 2011-01-06 11:51:28