netcore 同步方法里调异步,异步方法里调用同步,不死锁写法

发布时间 2023-11-23 17:02:07作者: 爱吃糖的宝宝

 

/// <summary>
/// 同步方法里调用异步
/// </summary>

static void SyncMethod()
{
//同步方法中调用异步方法(第一种写法)
AsyncMethod(参数1, 参数2).ConfigureAwait(false).GetAwaiter().GetResult();

//同步方法中调用异步方法(第二种写法)

AsyncHelper.RunSync(async () =>
{
await loginAppService.AddLoginDetail(autoInfo);
});


}

static async Task AsyncMethod()
{
// 异步方法中调用同步方法
await Task.Run(() => AnotherSyncMethod());
}