ΑZ
Task RunAsync()
а синхронного - void Run
. Поменять первое на второе так чтобы оно незаметно скомпилилось - невозможноне совсем так. Там может вылезти что угодно. Понятно дело что все функции типа асинхронные. Но то, что они делают внутри, не всегда "асинхронное", оно может тормозить, хотя предполагается что как бы не должно. Вот в этом и сила голанга - тебе не надо предполагать ничего, всё выполняется асинхронно благодаря умному шедулингу горутин
foo := SomethingReallyLong()
то тебя горутина магически спасет от этого как-то?