【发布时间】:2013-05-24 23:36:15
【问题描述】:
对不起,如果这很明显。我正在尝试从 VB.NET 跳转到 C#,我目前正在处理任务。在 VB.NET 中,我可以像这样定义一个任务:
Dim t As New Task(Sub()
Threading.Thread.Sleep(1000)
End Sub)
任务之后的部分对我来说很有意义,我正在创建一个新方法。
在 C# 中它看起来像:
Task t = new Task(() =>
{
Thread.Sleep(1000);
});
我猜() 表示这是一种新方法,但我需要=> 是什么以及为什么需要。
【问题讨论】:
-
@BenReich 我的错,我先搜索但没有想到这个。尽管如此,
=>似乎是多余的,但这可能是因为我只使用过 vb.net -
() 表示方法的参数列表。在这种情况下,您没有任何参数,但无论如何您都需要括号
-
我认为没有人回答“为什么” - 我认为需要消除 C# 代码解析中可能存在的任何歧义(这可能也是在“遗留”中使用“委托”的原因' C# 代码)。