目录
一、写个自己的异步方法
1.发出 http 请求用的是 HttpClient 这个类
因为 HttpClient 实现了 IDisposable 接口所以得用 using 回收。(?为什么?存疑!)
2. 获取网页内容:以 html 的形式
假定接收类型一定为 html 格式,则用字符串格式接收。GetString 只有异步方法,没有同步方法
3.将得到的 html 写入 filename 从文件夹中
4.返回 html 文件的长度
5.在 Main 方法中调用此方法
运行结果为:
二、小结
如果同样的功能功能的方法既有异步方法又有同步方法,那这种时候首先使用异步方法。
对于不支持的方法怎么办?用 Task<T> 类型的参数接收其返回值。再在返回值前面添加 .Result 。
这种情况是微软自动的帮我们拿到返回值 str 的 Result 。
同样也可以用 Wait() 方法:
但是这种情况有死锁的风险,尽量不提倡这么做。