ThreadStart引用错误

时间:2015-10-12 10:11:43

标签: c# multithreading asynchronous

在按照一些创建线程的基本代码后,我遇到了问题。

我有一个方法,我用于在threadstart上进行回调,但是我收到了一个错误,

  

非静态字段,方法或属性'Program.ServerUDP'

需要对象引用

就此而言,(ServerUDP)。

public void Server.UDP(){}
static void Main(string[] args) { 
     Thread UDPThread = new Thread(new ThreadStart(ServerUDP)); 
}

两者都包含在同一个类程序

我错过了一些明显的东西吗?我查找的所有代码基本上都是这样运行的,我甚至试图将Thread的声明移出main并作为类的属性,但这是同样的问题。

2 个答案:

答案 0 :(得分:1)

ServerUDP应该是静态方法

答案 1 :(得分:0)

如果指定/使用Server类的实例,则只能访问该方法。因此,如果它没有使用任何特定的object,您可以将该方法设为静态。您指定了Server.UDP非常奇怪,这表明仅使用new Server().UDP();

无论如何,当你修复它时,你也必须这样写:

new ThreadStart(() => ServerUDP());