【发布时间】:2019-08-11 18:11:19
【问题描述】:
有一个功能
async Task MyFuncation(Func<Task> f)
{
// do something
//
await f();
}
有时我需要调用函数但没有任何参数f,所以我将它传递给async () => { }。有noop功能吗?
await RunMyFuncation(async () => { }); // I still need to call Run
【问题讨论】:
-
可以修改方法吗?
-
@TaW 一个用于语法错误,一个用于 noop 引用。她们不一样。另一个被删除了。
-
@RufusL 是的,我可以。
-
在这种情况下,您可以将参数设为可选,并在尝试执行方法之前对方法内部进行
null检查:async Task Run(Func<Task> f = null) { if (f != null) await f(); },然后像这样调用它:await Run();
标签: c#