本地方法区: 这块内存空间主要调用的是操作系统相关的资源
public static native long currentTimeMillis();
寄存器: 交给CPU进行控制和使用的区域.
public class Jvm_Memory {
public static void main(String[] args) {
Tiecket t = new Tiecket();
new Thread(t,"窗口1").start();
new Thread(t,"窗口2").start();
}
}
class Tiecket implements Runnable{
int tickets = 100;
@Override
public void run() {
while (true){
synchronized (Tiecket.class){
if (tickets <= 0){
break;
}
System.out.println(Thread.currentThread().getName() + "卖出了第:" + tickets-- + "号票");
}
}
}
}
内存图:
每一个线程都会有自己独立的内存空间:
这里有三个线程:
本文由 Alicyu 创作,如果您觉得本文不错,请随意赞赏
采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
原文链接:https://www.alicyu.com/archives/jvm-memory
最后更新:2019-10-18 15:15:35
Update your browser to view this website correctly. Update my browser now