如何在C#中使用ServiceController启动Windows服务的新实例

时间:2014-01-30 06:26:54

标签: c# multithreading sockets windows-services

我有一个使用Visual Studio安装程序安装的Windows服务应用程序.Windows服务应用程序正在使用C#套接字程序使用Ip和端口号从服务器读取数据并将其连续写入文本文件.IP地址从数据库读取端口号。现在根据我的要求,假设客户端想要再添加一个服务器IP地址和端口号,在这种情况下如何在Windows服务中创建数据捕获应用程序的新实例。 这是我在Windows Service OnStart()方法中的代码..

protected override void OnStart(string[] args)
    {
        _thread = new Thread(DoWork);
        _thread.Start();

    }

2 个答案:

答案 0 :(得分:1)

不,你不需要重启服务..

protected override void OnStart(string[] args)
{
    _thread1 = new Thread(DoWork);
    _thread1.Start();
    _thread2 = new Thread(DoWork);
    _thread2.Start();
}

将一些参数传递给两个线程然后相应地工作

答案 1 :(得分:0)

您不需要为此创建第二个服务实例。只需启动另一个线程并将第二个IP和端口作为参数传递给它。