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