zoukankan      html  css  js  c++  java
  • .NET Core 控制台应用程序使用异步(Async)Main方法

    C# 7.1 及以上的版本允许我们使用异步的Main方法。

    一.新建一个控制台应用程序

    1529762562337

    二.异步Main方法

    我们直接将Main方法改为如下:

    static async Task Main(string[] args)
    

    1529762747510

    可以看到报错了,提示我们是C# 7.1 的特性。我们有两种方法可以解决,其实最后都是殊途同归,只是操作不一样而已。

    1.第一种方法-修改csproj文件

    打开项目的csproj文件,添加如下代码:

     <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
        <LangVersion>7.1</LangVersion>
      </PropertyGroup>
    

    例如:

    1529762909659

    2.第二种方法-通过vs更改项目属性

    在“解决方案管理器”界面中,选中项目,然后 右键->属性 -> Build

    1529763028967

    在弹出的界面中选中 C# 7.1

    1529763064679

    经过上面的更改以后,将不会报错了。

    三.验证

    我们在Main方法中,加入如下代码,获取百度首页的html:

    class Program
    {
        static async Task Main(string[] args)
        {
            var client = new HttpClient();
            var result = await client.GetStringAsync("https://www.baidu.com/");
            Console.WriteLine(result);
            Console.ReadKey();
        }
    }
    

    然后运行:

    1529763181795

    本文所用代码:https://github.com/stulzq/BlogDemos/tree/master/AsyncConsoleApp

  • 相关阅读:
    降低大气分
    99999
    88888
    77777
    HandlerThread实现原理
    Android 内存泄漏总结
    Handler实现机制,同步屏障,IdleHandler
    launcher 配置
    微信小程序 上传图片七牛
    微信小程序 跳转传参数 传对象
  • 原文地址:https://www.cnblogs.com/stulzq/p/9219085.html
Copyright © 2011-2022 走看看