• JAVA多线程本质分析


           多线程是Java开发中的重中之重,其重要性和难度,可见一斑。掌握并精通多线程开发,是每一个程序员的必修之课。哪怕中间的过程很痛苦,只要坚持了,并最终豁然开朗了,都是一种升华。

           多线程的优化:合理利用CPU,使用多线程并行取代单线程串行,可以显著提升系统性能。

           多线程线程安全问题,本质上就是资源共享问题。如果多线程之间彼此独立,互不影响,这种情况是不存在线程安全问题的。如果多线程之间涉及共享资源,此时处理不当,就存在线程安全问题。举个简单的例子:A、B、C三人各自有一块蛋糕,他们之间不存在竞争关系,不会出现矛盾;A、B、C共享一块蛋糕,则他们之间存在竞争关系,会出现矛盾。

           那么,如何解决多线程线程安全问题呢?两种思路:隔离资源;同步共享资源。

           一、隔离资源:使用ThreadLocal隔离资源,即将共享资源备份到各自的线程单独处理。

           二、同步共享资源:既然是共享资源,就想办法控制,在同一时刻,只有一个线程来操作共享资源。使用的技术有:使用synchronized同步关键字;使用reentrantlock等更加灵活的锁工具;使用CAS无锁思想。

           本篇只是引题,后面的篇幅将会详细讲述具体的实践案例。

  • 相关阅读:
    原生JS之温故而知新(一)
    jQuery版本问题
    AngularJs我的学习整理(不定时修改)
    Js事件处理程序跨浏览器
    AngularJs的关于路由问题
    很棒的十句话,分享给大家。
    一个人为什么要努力?
    春熙路。
    成都
    springboot 使用mybatis-generator自动生成代码
  • 原文地址:https://www.cnblogs.com/dushenzi/p/9363507.html
Copyright © 2020-2023  润新知