java学习笔记(碎片化)

关于java同步锁的自己的理解:

jvm虚拟机有个线程私有的内存叫“程序计数器”,是java处理多线程时如何记忆上一个线程执行的位置的标杆,我们都知道,java多线程是类似cpu处理进程那样,线程轮流切换,在一个时刻,一个处理器只处理一个线程中指令,程序计数器就起到这种切换的效果。而synchronized同步锁我认为就是改变当前线程的程序计数器记录的字节码指令的地址(变成锁的地址?),然后线程会把这段代码(同步代码块)执行完全后再去根据另一个线程的程序计数器完成线程切换。总结就是,锁统一了线程的一段代码的计数器地址,而让这段代码能完全执行完毕。

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭