TIJ描述的多线程并发

来源:互联网 发布:中国十大网络主播 编辑:程序博客网 时间:2024/05/18 00:42
最近读了Java编程思想的《并发》这一章节,发现Bruce大叔对并发的介绍也很到位,这里顺便总结一下:

1. 多处理器的运行环境中,在这些处理器之间分布多个任务,可以极大提高吞吐量,有效提高CPU密集非阻塞类型任务的处理速度

2. 在单处理器上运行的并发程序开销确实比该程序的所有部分都顺序执行的开销大,因为并发有上下文切换的额外开销

3. 单处理器上运行的并发程序有时也是很有意义的,尤其是对经常发生阻塞的I/O密集型任务来说,并发可以充分利用阻塞空隙的CPU时间,也是提高响应速度的有效方法

4. 编写多线程程序最基本的困难在于协调不同线程或进程对共享资源的使用。互相之间依赖很小,共享资源很少的多个任务最适合用并发来实现

5. 并发还有另外一个好处是改进代码设计,多个任务如果不用并发顺序执行,不得不经常在代码级别在不同任务之间手工做切换,这样的代码设计结构不够清晰,不易理解,而将多个任务分开在不同的线程,每个线程的执行流程就很清晰

0 0