欢迎您的访问
专注架构,Java,数据结构算法,Python技术分享

Java多线程(三):线程栈模型与线程的变量

要理解线程调度的原理,以及线程执行过程,必须理解线程栈模型。

线程栈是指某时刻时内存中线程调度的栈信息,当前调用的方法总是位于栈顶。线程栈的内容是随着程序的运行动态变化的,因此研究线程栈必须选择一个运行的时刻(实际上指代码运行到什么地方)。

下面通过一个示例性的代码说明线程(调用)栈的变化过程。

这幅图描述在代码执行到两个不同时刻1、2时候,虚拟机线程调用栈示意图。

Java多线程(三):线程栈模型与线程的变量

当程序执行到t.start();时候,程序多出一个分支(增加了一个调用栈B),这样,栈A、栈B并行执行。

从这里就可以看出方法调用和线程启动的区别了。

本文出自 “熔 岩” 博客,http://lavasoft.blog.51cto.com/62575/99151

赞(0) 打赏
版权归原创作者所有,任何形式转载请联系作者;码农code之路 » Java多线程(三):线程栈模型与线程的变量

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏