在传统的同步开发模式下,当我们调用一个函数时,通过这个函数的参数将数据传入,并通过这个函数的返回值来返回最终的计算结果。但在多线程的异步开发模式下,数据的传递和返回和同步开发模式有很大的区别。由于线程的运行和结束是不可预料的,因此,在传递和返回数据时就无法象函数一样通过函数参数和return语句来返回数据。
代码实现
数据对象创建。
public class Data {
private int value;
public int getValue() {
return value;
}
public void setValue(int value) {
this.value = value;
}
}
public class SubThread extends Thread{
private Data data;
public Data getData() {
return data;
}
public void setData(Data data) {
this.data = data;
}
public SubThread()
{
}
public SubThread(Data data)
{
this.data=data;
}
public void run()
{
System.out.println("子线程内:"+data.getValue());
this.data.setValue(200); //将值做修改
Test.callback(); //调用回调函数
}
}
更多了解