ParameterizedThreadStart

ParameterizedThreadStart

如果我有这样的方法

  private void LoadModel(List<object> filenames)
{
}

并想在线程中运行此方法,我做到这一点
loadingThread = new ParameterizedThreadStart(LoadModel)

但给我错误

如何解决这个问题呢 ?
No overload for 'LoadModel' matches delegate 'System.Threading.ParameterizedThreadStart'

最佳答案

该委托(delegate)定义为

public delegate void ParameterizedThreadStart(object obj)

您必须更改方法声明以使其与之匹配:
private void LoadModel(object filenames)

然后在方法中将filenames转换为List

要创建并启动线程,请使用
Thread loadingThread = new Thread(LoadModel);
loadingThread.Start(filenames);

与其创建自己的线程,不如考虑使用TasksThreadPool

关于c# - ''没有重载匹配委托(delegate) 'System.Threading.ParameterizedThreadStart',我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33137039/

10-10 03:00