我有一个Windows NT服务,可以打开ServiceHost对象。服务主机上下文是按 session 的,因此为每个客户端创建一个新的工作线程。我想做的是让每个工作线程都对启动服务主机的线程进行调用。
NT服务需要打开VPN连接并从远程网络上的设备轮询信息。该信息存储在SQL数据库中,以供工作线程读取。我只想在连接了客户端的情况下轮询设备,这将减少网络流量。我希望工作线程告诉服务主机线程他们正在请求信息,并开始轮询和更新数据库。如果始终在轮询设备并且正在更新数据库,则一切正常。
最佳答案
为什么不实现单例并在创建服务后初始化此属性。之后,您可以随时引用它。
private static MyService m_ServiceInstance;
public static MyService ServiceInstance
{
get { return m_ServiceInstance; }
}
关于wcf - WCF服务 worker 线程与ServiceHost线程进行通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2464556/