Java 如何在两个无限循环线程之间共享单个列表?

Java 如何在两个无限循环线程之间共享单个列表?,java,multithreading,concurrency,Java,Multithreading,Concurrency,我有数据结构,即队列、堆栈或列表。线程1中有一个无限循环将对象插入到该数据结构中,而线程2中有另一个无限循环从该数据结构中获取对象并对其进行一些处理。我不希望处理循环阻止插入循环 我如何在Java中正确地做到这一点,在两个线程之间共享一个数据结构,并从两个不同的线程进行同步和并发读/写?java并发API java 7中有我可以使用的数据结构吗?有什么建议可以解决这个问题吗?Java似乎是FIFO排序队列的最佳选择。它将在不阻塞的情况下接受队列的条目和请求,这使得它非常容易实现,而不需要实现任何

我有数据结构,即队列、堆栈或列表。线程1中有一个无限循环将对象插入到该数据结构中,而线程2中有另一个无限循环从该数据结构中获取对象并对其进行一些处理。我不希望处理循环阻止插入循环


我如何在Java中正确地做到这一点,在两个线程之间共享一个数据结构,并从两个不同的线程进行同步和并发读/写?java并发API java 7中有我可以使用的数据结构吗?有什么建议可以解决这个问题吗?

Java似乎是FIFO排序队列的最佳选择。它将在不阻塞的情况下接受队列的条目和请求,这使得它非常容易实现,而不需要实现任何花哨的东西

进一步解读非阻塞背后的理论


查看java并发程序包感谢@Ross分享此有用信息并编辑问题: