C#异步编程

既然有了多线程为什么还需要异步

      异步 并不意味者多线程,单线程同样可以异步

  异步默认借助线程池

      多线程经常阻塞,二异步要求不阻塞
多线程与异步的使用场景不同

   多线程:

             适合CPU 密集型操作  适合长期运行任务 线程的创建与开销较大 提供更底层的控制,操作线程,锁信号量 线程不易与传参及返回     线程的代码书写繁琐

    异步:

           适合IO 密集型操作         适合短暂的小任务          避免线程阻塞,提高系统的响应能力

--------------------------------

什么是异步任务(Task)

   1.异步任务的各种状态

           1.1正在运行,完成,结果,报错等

        Created -- WaitingToRun --  Running -- RanToCompletion  / WaitingForActivation  WaitingForChildrenToComplete  Canceled  Faulted

    1.2 ValueTask 值类型版本

     

posted @   jackwu74  阅读(13)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示