有关java堆和栈,以及线程间通信的问题
我们知道,在多线程间,堆内数据是可以共享的,这也使得java线程间的通信变得方便。
我们也知道,java真正要访问堆中对象的时候,是通过栈里面的引用地址实现的。而线程间栈是不共享的
那么,我有一个问题,没有共享的栈来指定引用地址,线程间对堆中对象的共享是怎么实现的?
谢谢
------解决方案--------------------实现Runnable接口
------解决方案--------------------线程间对堆中对象的共享是怎么实现的?
class A implements Runable{
int x;
public void run(){}
public static void main(String[] args){
A a = new A();
Thread t1 = new Thread(A);
Thread t2 = new Thread(A);//同样的A
//-------------这样共享就实现了!
}
}