Task
означает «то, что нужно сделать, которое, возможно, уже выполнено, может выполняться в параллельном потоке или может зависеть от внепроцессных данных (сокетов и т. Д.) Или может быть просто так... подключен к коммутатору где-то с надписью «сделано» - он имеет очень мало для работы с потоками, кроме: если вы планируете продолжение (он же await
),затем каким-то образом , который должен вернуться в поток для запуска, но как это происходит и что это означает, зависит от того, какой код создан и принадлежит задаче.
Примечание: параллелизм можно выразить в терминах нескольких задач (если вы того пожелаете), но множественные задачи не подразумевают параллелизма.
В вашем случае: все зависит от того, что CanRun
делает или является -и мы этого не знаем .Его также, вероятно, следует назвать CanRunAsync
.