54 【面试官:synchronized 的可重入的实现原理? - 后端研发工程师哈哈 | 小红书 - 你的生活指南】 😆 bQcitQUV4TZod17 😆 http://xhslink.com/oareES

Untitled

synchronized 同步的代码块,具有排他性,一次只能被一个线程拥有,所以synchronized 保证同一时刻,代码是单线程执行的。

因为 as-if-serial 语义的存在,单线程的程序能够保证最终结果是有序的,但是不保证不会指令重排。

所以 synchronized 保证的有序是执行结果的有序性,而不是防止指令重排的有序性。