可能重复:
new Thread(void Target()) 和 new Thread(new ThreadStart(void Target())) 有什么区别?
我有一个关于 Thread 类的小问题。这个类有 4 个构造函数:
public Thread(ParameterizedThreadStart start);
public Thread(ThreadStart start);
public Thread(ParameterizedThreadStart start, int maxStackSize);
public Thread(ThreadStart start, int maxStackSize);
我使用第二个构造函数来创建一个 Thread 对象:
Thread thread = new Thread(new ThreadStart(ScanDirectory));
但是,我可以使用一种方法来创建此对象,而无需使用上面提到的任何构造函数。
Thread thread = new Thread(ScanDirectory);
在这种情况下,ScanDirectory 是一个 void 方法,它不是 ThreadStart 或 ParameterizedThreadStart 但 Thread 类仍然接受这个构造函数。为什么?我认为这是一个 .NET 功能,但我不知道它是如何实现的。
注意: ScanDirectory 是一个 void 方法。