在CancellationTokenSource布尔字段上使用volatile来表示Task
完成信号是否有任何好处?
答案 0 :(得分:21)
当然是的。有许多。我列举的很少。
gcc
支持回调。您可以在要求取消时收到通知。table_for PaperTrail::Version.order('id desc').where("item_type = ?", "user").limit(5) do
//some code
end
支持CancellationToken
,您可以无限期地等待或暂停。CancellationToken
方法安排取消WaitHandle
。CancellationToken
链接到另一个,以便在取消其他人时可以将其视为已取消。CancellationTokenSource.CancelAfter
CancellationToken
,那么一个易变的布尔值无法将任务的状态转换为已取消但Task
可以。