Sil*_*viu 2 java multithreading synchronization vector arraylist
我正在编写类似于聊天服务器 - 客户端对的应用程序.
我计划有一个中心对象,它将保存从客户端收到的新消息,直到主线程处理它们为止.
我的应用程序是多线程的.每个客户端都在自己的线程上,因此多个线程将向此中心对象添加消息.
主线程将检查此对象的消息,删除"最旧的"并适当地处理它.我希望消息的处理顺序与它们相同(FIFO).
什么类型的Object最适合保存新消息?我查看了Vectors和ArrayLists,但我对同步方面感到困惑.我以前从未使用同步或线程.
谢谢
ConcurrentLinkedQueue 听起来很可能
更多信息:如何使用ConcurrentLinkedQueue?
Javadoc:http://download-llnw.oracle.com/javase/1.5.0/docs/api/java/util/concurrent/ConcurrentLinkedQueue.html