我在SO中找不到这个问题的直接答案。是否有void (void)
签名的预定义委托?
答案 0 :(得分:4)
Action有您正在寻找的签名。但是,它并不意味着与Runnable相同:Runnable通常表示run()方法旨在在Thread上运行,而Action没有指示。为此你需要ThreadStart,它具有相同的签名,并且确实做出了指示。
如果你需要的只是一个没有参数的代表,Action
就是你想要的。如果您正在处理线程并需要指示start方法,请使用ThreadStart
。
答案 1 :(得分:1)
不。 C#以不同于Java的方式处理线程。在Java中,Runnable接口是继承Thread的替代方法,但您仍然需要创建一个新的Thread对象,将Runnable传递给构造函数。
您只需创建一个新的Thread
对象并将其传递给System.Threading.Thread
委托(这是您完成工作的功能),而不是继承ThreadStart
类。 ThreadStart是与Java的Runnable相当的C#。
但是,Action
代表拥有您所说的void
个参数。
答案 2 :(得分:1)