C# 异步和等待(async和await用法)_解决连接服务器时UI界面线程卡死的问题

异步编程async await的用法。

使用async await 的前提条件:需要C# 5.0以上版本    .NET Framework 4.5以上    Visual Studio 2012以上。

async是用来修饰方法,表示此方法可以是异步方法,如果方法里不包含await,则此方法相当于普通的同步方法。

await是使用在被async修饰的方法里。

await 后面跟上一个异步操作Task,当程序执行到此行代码时,由于有await的修饰,会等待异步操作Task执行,Task执行完成后才会执行此方法里await这一行后面的代码,

但是外部调用async方法的地方,不会等待Task完成,就执行后面的代码。

 public static async void tcpConnect_Recv(string ip, string port, string req_head, string req_data)
        {
            await Task.Run(()=> { cmd_final_send(ip,port,req_head,req_data); });
        }
欢迎讨论,相互学习。 txwtech@163.com
原文地址:https://www.cnblogs.com/txwtech/p/14821590.html