我有一些异步代码,想要添加一个CancellationToken
。然而,并非所有情况都需要使用此功能,因此我想设置一个默认参数——可能是CancellationToken.None
。但是,
Task<x> DoStuff(...., CancellationToken ct = null)
产生
类型为“<null>”的值不能用作默认参数,因为没有标准转换到类型“System.Threading.CancellationToken”。
和
Task<x> DoStuff(...., CancellationToken ct = CancellationToken.None)
'ct'的默认参数值必须是编译时常量
有没有办法为CancellationToken
设置默认值?
new CancellationToken()
,它与default
完全等效,因为 CancellationToken 是一个结构体。 - PalecCancellationToken.None
也不是那么困难吧? - Alexei SosinCancellationToken.None
也不是那么困难吧? - undefined