有谁知道如何将多个参数传递给Thread.Start例程?

我想扩展该类,但是C#Thread类是密封的。

我认为代码如下所示:

...
    Thread standardTCPServerThread = new Thread(startSocketServerAsThread);

    standardServerThread.Start( orchestrator, initializeMemberBalance, arg, 60000);
...
}

static void startSocketServerAsThread(ServiceOrchestrator orchestrator, List<int> memberBalances, string arg, int port)
{
  startSocketServer(orchestrator, memberBalances, arg, port);
}

顺便说一句,我以不同的协调器,天平和端口开始了许多线程。请同时考虑线程安全性。

最佳答案

尝试使用lambda表达式捕获参数。

Thread standardTCPServerThread =
  new Thread(
    unused => startSocketServerAsThread(initializeMemberBalance, arg, 60000)
  );

10-07 13:11