thread和threadpool和task总结

Thread 就是线程。一个小小的对象而已。线程上可以执行一个函数。主要用法可以用来并发执行一些动作,也能在不阻塞UI的情况下完成一些持续计算。但是,很多人觉得每次调用一个函数都要new一个线程是很麻烦的。所以干脆提前New好了很多线程。装在一个list中。你要调用函数的时候就从list中提取出一个空闲的线程。函数执行完毕后,就把这个空闲的线程又放到这个list中。减少了new thread的时间。所以线程池,说白了就是List。提供一个方法,让你能方便的把自己的函数不管三七二十一都放这个List中去,然后依次执行。

所以,如果你常常使用系统的线程池,你甚至不需要知道Thread是什么东西。你只要知道,这是一个魔术口袋,你把你的函数塞进去,过一阵子就执行完了。根本不要你来操心。

微软真是培养懒人啊。。

后来大家发现,线程池也不方便,因为进了这个魔术口袋的函数,你不能突然中断它的执行。在多核时代,它的效率也不尽如人意。所以微软又把原来的线程池改造了一下,现在都不叫threadPool了。直接叫Task。你不必管我是怎么实现的,你只要把函数塞我肚肚里,我一定会执行。而且你能用我提供的API。来控制整个过程。

所以Task。就是一个方便使用的线程池。至于把函数塞进去。肯定是在其它线程中执行的,只是这不是我们需要操心的了。

我很喜欢微软的新特性,每次都能给我带来新的惊喜。让我又懒了一些。

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

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,785评论 18 399
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,067评论 19 139
  • 朋友的平房
    80305dd804d6阅读 165评论 0 0
  • 婚姻的底线不是背叛,而是不爱—— 一、冤家路窄 苏天杭没有想到,自己与小三儿手牵手地走在大街上会被妻隽子撞个正着—...
    三秋树5266阅读 452评论 0 2
  • 2017.6.26 大晴天 周末我们回了娘家,想做的事情都做啦。 今日青蛙 改论文
    carol晓霞阅读 74评论 1 0