随笔 - 171  文章 - 0  评论 - 0  阅读 - 62426

Happens-Before原则

Happens-Before

  • 程序顺序原则:如果程序操作 A 在操作 B 之前,那么多线程中的操作依然是 A 在 B 之前执行。
  • 监视器锁原则:在监视器锁上的解锁操作必须在同一个监视器上的加锁操作之前执行。
  • volatile 变量原则:对 volatile 修饰的变量写入操作必须在该变量的读操作之前执行。
  • 线程启动原则:在线程对 Tread.start 调用必须在该线程执行任何操作之前执行。
  • 线程结束原则:线程的任何操作必须在其他线程检测到该线程结束前执行,或者从 Thread.join 中成功返回,或者在调用 Thread.isAlive 返回 false。
  • 中断原则:当一个线程在另一个线程上调用 interrupt 时,必须在被中断线程检测到 interrupt 调用之前执行。
  • 终结器规则:对象的构造方法必须在启动对象的终结器之前完成。
  • 传递性:如果操作 A 在操作 B 之前执行,并且操作 B 在操作 C 之前执行,那么操作 A 必须在操作 C 之前执行。
posted on   zhengbiyu  阅读(18)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示