码迷,mamicode.com
首页 > 编程语言 > 详细

多线程设计模式简介

时间:2018-01-24 22:27:40      阅读:219      评论:0      收藏:0      [点我收藏+]

标签:安全   min   www   高并发   bsp   消费   帮助   停止线程   不可变对象   

多线程设计模式简介

随着CPU的生产工艺从提高CPU的主频率转向多核化,以往那种靠CPU主频率提升所带来的软件的性能提升的“免费午餐”不复存在。这使得多线程编程在充分发挥系统CPU资源以及软件性能方面起到了越来越重要的作用。然而,多线程编程本身又会引入开销和其他问题,如较之简单的单线程顺序编程的复杂性、线程安全问题、死锁、活锁以及上下文切换开销等。多线程设计模式是多线程编程领域的设计模式,它可以帮助我们解决多线程编程中的许多问题。

  • 不使用锁的情况下保证线程安全:不可变对象模式(Immuntable Object)、线程特有存储模式(Thread Specific Storage)、串行线程封闭模式(Serial Thread Confinement)

  • 优雅地停止线程:俩阶段终止模式(Two-phase Termintion)
  • 线程协作:保护性暂挂模式(Guarded Suspension)、(生产者/消费者)模式(Producer-Consumer)
  • 提高并发性、减少等待:承诺模式(Promise)、主动对象模式(Active Object)、流水线模式(Pipeline)
  • 提高响应性:主仆模式(Master-Slave)、(半同步/半异步)模式(Half-sync/Half-async)
  • 减少资源消耗:线程池模式(Thread Pool)、串行线程封闭模式(Serial Thread Confinement)

有了多线程的设计模式,那开发者在日后的工作中,就可以根据自己的业务需求去选择多线程编程,以上便是我对于多线程模式的简介,要想更多的了解可以参考《多线程编程实战指南》

 

https://www.cnblogs.com/javawan/p/6634552.html

 
 

多线程设计模式简介

标签:安全   min   www   高并发   bsp   消费   帮助   停止线程   不可变对象   

原文地址:https://www.cnblogs.com/feng9exe/p/8343008.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!