WaitCallback中下划线的含义

时间:2012-10-05 04:23:39

标签: c# .net multithreading linq

ThreadPool.QueueUserWorkItem(new WaitCallback((_) => { MyMethod(param1, Param2); }), null);

请问你在WaitCallBack构造函数中解释下划线(_)的含义吗?

2 个答案:

答案 0 :(得分:6)

unserscore实际上是匿名方法的参数。如果需要输入参数的lambda表达式,但实际上并未使用输入参数,这是一种常见的技术。

这完全等同于:

new WaitCallback(x => { MyMethod(param1, Param2); })

答案 1 :(得分:2)

Underscore是一个有效的C#标识符名称,通常与lambda表达式一起使用,以指定将被忽略的表达式的参数

您可能会看到:Nice C# idiom for parameterless lambdas