C# 如何将我的方法分配给线程?

C# 如何将我的方法分配给线程?,c#,.net,multithreading,C#,.net,Multithreading,我编写了以下代码: var threaddatatable = new System.Threading.Thread(update); threaddatatable.Start(dt); update(datatable dt) { } 但我收到了这些错误: 匹配的最佳重载方法 System.Threading.Thread.Thread(System.Threading.ThreadStart)具有 一些无效的参数 及 参数1无法从“”方法转换 组“”到System.Threading

我编写了以下代码:

var threaddatatable = new System.Threading.Thread(update);
threaddatatable.Start(dt);

update(datatable dt)
{
}
但我收到了这些错误:

匹配的最佳重载方法 System.Threading.Thread.Thread(System.Threading.ThreadStart)具有 一些无效的参数

参数1无法从“”方法转换 组“”到System.Threading.ThreadStart


如何将我的
update
方法分配给我的线程?

签名接受对象;你需要

new Thread(obj => update((DataTable)obj));

我还建议查看线程池或TPL/任务-线程相对昂贵。

您应该像这样重写代码

var threaddatatable=new System.Threading.Thread(new System.Threading.ThreadStart(update)); threaddatatable.Start()