在C#中的控制台应用程序异步?

在C#中的控制台应用程序异步?

我有这个简单的代码:

public static async Task<int> SumTwoOperationsAsync(){
    var firstTask = GetOperationOneAsync();
    var secondTask = GetOperationTwoAsync();
    return await firstTask + await secondTask;}private async Task<int> GetOperationOneAsync(){
    await Task.Delay(500); // Just to simulate an operation taking time
    return 10;}private async Task<int> GetOperationTwoAsync(){
    await Task.Delay(100); // Just to simulate an operation taking time
    return 5;}

大。这个编译。

但是让我们说我有一个控制台应用程序,我想运行上面的代码(调用SumTwoOperationsAsync()

 static  void Main(string[] args)
        {
             SumTwoOperationsAsync();
        }

但我读过,(使用时sync),我不得不一路同步向上向下 :

问题:这是否意味着我的Main功能应该标记为async

不可能是因为存在编译错误:

无法使用“async”修饰符标记入口点

如果我理解异步的东西,线程将进入Main函数----> SumTwoOperationsAsync---->将调用这两个函数并将被输出。但直到SumTwoOperationsAsync

我错过了什么?


元芳怎么了
浏览 1024回答 3
3回答
打开App,查看更多内容
随时随地看视频慕课网APP