【发布时间】:2014-06-02 03:03:10
【问题描述】:
我知道函数结束后内存返回。
线程对象什么时候返回? - 什么时候返回变量 A?
public AAA () {
int a = 1;
new thread() {
public void run() {
}
}.start();
}
对不起。
A 何时从堆栈中移除?在 AAA() 结束或线程结束之后?
线程对象何时从堆中移除?
【问题讨论】:
-
“退货”是什么意思?
-
首先,它不会编译,因为它是
Thread,而不是thread。其次,它不是“返回”任何东西,因为run的返回是void。第三,它会启动线程并(相对)快速地重新加入,因为在线程的主体中没有任何工作要做。 -
谷歌“自动存储”和“调用/返回堆栈”。对于额外的信用,你可以谷歌“垃圾收集”,特别是关于 Java。
标签: java multithreading memory methods return