我在 servicebase 中有 2 个服务,它的 onstart 方法是无限循环(使用 AsyncReadContext 方式完成),但是当启动服务时,它正在启动列表中的第一个服务,并且永远不会进入第二个服务的 onstart。一些代码:
ServiceBase[] ServicesToRun;
ServicesToRun = new ServiceBase[]
{
new Service1(),
new Service 2(),
};
ServiceBase.Run(ServicesToRun);
开始:
protected override void OnStart(string[] args)
{
//read MsMQ async way
}
服务 1 正在读取队列,但服务 2 没有读取队列。当我将服务 2 更改为列表中的第一个然后服务 2 正在读取队列时,它的代码相同。这两种服务的队列是不同的。