问题一、线程B向线程A中传递了对象的应用,A得到了数据并进行处理,为什么B线程操作该对象,还是该对象在B中赋的值,A中的处理在B中没有结果。
B线程在执行过程调用了A线程,并将对象引用传递给了A线程,此时A线程被调用,但B线程仍处于运行状态,而A线程处于等待状态,所有A线程对引用的处理还没有开始,当然在B无法调用A处理后的结果。
下面程序用于演示:
public class A implements Runnable{
StringBuffer str;
public A(StringBuffer str) {
this.str=str;
}