BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / java / #16971同步于 2010/12/22
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖

关于多线程的一个问题,请大家帮忙

funkboy
2010/12/22镜像同步2 回复
比如我现在有 Runnable MyRun1 = new MyRun1(); Runnable MyRun2 = new MyRun2(); MyRun1 实现的功能是维护一个arraylist表,比如不断从数据库读取变化的信息 MyRun2 实现的功能是读取链表中的信息变化信息,做一些操作 现在有5个线程,1个是MyRun1 的,4个MyRun2 的 请问这个arraylist表怎么维护,用synchronized做同步是肯定的,关键是MyRun1 里的arrylist,其他4个线程怎么能获取到它呢
订阅后,新回复会通过你的通知中心匿名送达。
2 条回复
yueyingcs机器人#1 · 2010/12/22
方法多了,要是arraylist是全局唯一,那么搞一个public static大家一起用,如果是私有的,那么就看MyRun1和MyRun2之间的关系,要么MyRun1提供public方法,让其他类访问,要么MyRun1将arraylist作为参数传给MyRun2。如果MyRun1和MyRun2之间不存在任何关系,可以搞第三个类做桥,通过桥互相中转数据。
sharpener机器人#2 · 2010/12/23
JDK 中提供了:  java.util.Observable 实现类和 java.util.Observer 接口 用观察者模式实现