解决多线程委托二义性问题
在多线程运行委托时,有时会报二义性问题,如下代码:
private void StartHostAsync(ServiceHostConfig config) { Thread thread = new Thread(delegate { this.StartHost(config); }); thread.Start(); }
会提示:语法二义性
ThreadStarted 和 ParameteriedThreadStarted的二义性,要解决问题很简单,只需求显式的转换一下就可以了 改成:
private void StartHostAsync(ServiceHostConfig config) { Thread thread = new Thread((ThreadStarted)delegate { this.StartHost(config); }); thread.Start(); }