第18节:线程同步机制


1.理论整理

并发: 同一个对象被多个线程同时操作;

  1. 由于同一进程的多个线程共享同一块存储空间,会发生访问冲突问题.为了访问的正确性,在访问时加入了锁机制(synchronized) 。当一个线程获得对象的排它锁时,独占资源,其他线程必须等待,使用后释放锁即可。
  2. 一个线程持有锁会导致其他所有需要此锁的线程挂起;
  3. 在多线程竞争下,加锁,释放锁会导致比较多的上下文切换和调度延时,引起性能问题;
  4. 如果一个优先级高的线程等待一个优先级低的线程释放锁,会导致优先级倒置,引起性能问题

2.实践

  1. 抢票不安全
    Java多线程系列(十八):线程同步机制+三个线程不安全的例子

  2. 同时取钱不安全
    Java多线程系列(十八):线程同步机制+三个线程不安全的例子

  3. 列表不安全
    Java多线程系列(十八):线程同步机制+三个线程不安全的例子


声明:本系列是"狂神说java"教程的个人学习笔记,无意侵权

相关文章:

  • 2021-05-24
  • 2022-12-23
  • 2021-11-19
  • 2022-02-07
  • 2021-10-05
  • 2021-05-01
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-06-09
  • 2022-12-23
  • 2021-09-18
  • 2022-01-26
  • 2021-10-23
相关资源
相似解决方案