本节的内容主要是对前面几节提到的线程间共享数据的方式做一个总结。
线程之间共享数据有以下几种方式:
1、如果每个线程执行的代码相同,可以使用同一个Runnable对象。
2、如果每个线程执行的代码不同,那么需要不同的Runnable对象,在这种情况下,有两种方式实现Runnable对象之间的数据共享:
(1)把要共享的数据封在另一个对象中,多个Runnable去操作这个对象。
(2)把要共享的数据声明成成员变量,多个Runnable写成这个类的内部类。这是利用了内部类共享外部类成员变量的特性。
这两种方式也可以混合使用,比如,把要共享的数据封到一个对象中,然后把这个对象做成外部类的成员变量,Runnable做成内部类。