对C#异步的一些结论

我对C#的异步是不太了解的,今天了解了一下,以及做了一些实验。

得到了一下的结论,论证过程就不公布了,就记录几条结论

1.Task是C#里的任务,开启一个任务相当于开启一个线程来执行代码逻辑。

2.如果主线程调用异步方法,那么将不会阻塞主线程的代码执行。

3.C#声明异步方法, async 必须 配合await方法一起使用。如果只用了async声明方法,没有await,那么它只能是同步方法,没有声明async方法签名的方法内部不能使用await关键字。

4.await关键字会等待异步方法执行完成,所以使用await 等待之后,会阻塞当前线程继续执行。也就是同步模式,在异步方法内部写同步代码。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 关于C# async/await的一些说明 下文以个人对async/await的理解为基础进行一些说明。 1、自定...
    Huisama阅读 21,639评论 2 58
  • 说明:本文只讨论同步异步,以及异步的多线程实现,不讨论多线程导致的数据不同步问题. 同步和异步是相对的 在异步概...
    LetMe_See阅读 2,325评论 0 0
  • 本文主要介绍了在 C# 中使用 Async 和 Await 关键字进行异步编程的心得,是入门级的学习笔记。 题解:...
    BossOx阅读 5,807评论 4 27
  • 什么是异步编程 什么是异步编程呢?举个简单的例子: 上面这段代码中,Main方法中的代码是按照自上而下的顺序执行的...
    雪飞鸿阅读 4,439评论 0 12
  • 从版本5.0开始,C#引入了async/await的异步编程模式,大大简化了异步编程的难度,使我们摆脱了回调函数、...
    寻找无名的特质阅读 734评论 0 2