【发布时间】:2013-08-18 14:05:00
【问题描述】:
我有一个包含许多生产者和消费者的应用程序。
据我了解,RingBuffer 在 RingBuffer init 开始时创建对象,然后当您在 Ring 中发布时复制对象并在 EventHandler 中从中获取它们。
我的应用程序 LogHandler 将接收到的事件缓存在一个列表中,以便在列表达到一定大小后以批处理模式进一步发送它。因此 EventHandler#onEvent 将接收到的对象放入列表中,一旦达到大小,它就会在 RMI 中将其发送到服务器并清除它。
我的问题是,我是否需要在放入列表之前克隆对象,据我所知,一旦使用它们就可以重复使用?
我需要在 EventHandler#onEvent 中同步对列表的访问吗?
【问题讨论】: