这两种方法之间的语义差异是什么?
UPDATE target_table T
SET T.m_value = (SELECT T1.m_value FROM target_table T1 WHERE T1.id = '1')
我是否应该考虑在一个或另一个之间做出选择?
答案 0 :(得分:7)
实际差异是:
Task.Run
并返回结果任务Task.Run
,然后排队继续,当此任务完成时,将继续执行您的方法就“我应该选择哪一个”而言,这是我使用的一般准则:
如果您要完成与任务相关的所有方法,请返回不要使用
async/await
相反,如果您需要“等待”任务完成,那么请执行更多操作,然后使用async/await
。
我确信这有例外,但我还没找到。
在这两种方法中,选择第一种方法。