首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

怎么定义一个线程安全的LinkedList对象

2012-01-21 
如何定义一个线程安全的LinkedList对象?不能是ListsynListCollections.synchronizedList(newLinkedList()

如何定义一个线程安全的LinkedList对象?
不能是   List   synList   =   Collections.synchronizedList(new   LinkedList());
因为我想使用   LinkedList.addFirst();   和   removeLast();方法!
谢谢指教!!!

[解决办法]
扩展LinkedList 重写addFirst方法和removeLast方法,加上同步处理.不知道是否可行
[解决办法]
定义一个类 MyLinkedList extends LinkedList
实现同步LinkedList.addFirst(); 和 removeLast();方法!

MyLinkedList list = new MyLinkedList ();
List listProxy = Collections.synchronizedList(list);


用普通方法时用 listprocxy 的方法, .....................

或者MyLinkedList 全部实现同步
[解决办法]
List synList = Collections.synchronizedList(new LinkedList());

LinkedList.addFirst(); ====> list.add(0,obj);
LinkedList.removeLast(); ===> list.remove(list.size());
[解决办法]
直接用Collections.synchronizedXXX方法,但要主要你要用容器的iterator()的时候在你的代码外围加上
synchronized(你的集合对象)

热点排行