在堆栈或堆内存中创建线程对象的位置?
Where a thread object is created in stack or in heap memory?
实际上我最近在一次采访中被问到这个问题,我回答堆栈,我认为线程将执行方法是正确的,但是你能解释一下为什么线程是在堆栈中创建的吗?如果不是,那么为什么它是在堆中创建的。
提前致谢
heap内存和stack内存的主要区别在于,栈内存用于存储局部变量和函数调用,而堆内存用于在Java中存储对象。无论在代码中何处创建对象。
所以线程对象存储在堆中。
此外,每个线程都有自己的堆栈来保存自己的局部变量和函数调用。
实际上我最近在一次采访中被问到这个问题,我回答堆栈,我认为线程将执行方法是正确的,但是你能解释一下为什么线程是在堆栈中创建的吗?如果不是,那么为什么它是在堆中创建的。
提前致谢
heap内存和stack内存的主要区别在于,栈内存用于存储局部变量和函数调用,而堆内存用于在Java中存储对象。无论在代码中何处创建对象。
所以线程对象存储在堆中。
此外,每个线程都有自己的堆栈来保存自己的局部变量和函数调用。