什么是多线程Java应用程序中进程间通信的最佳方法.
它应该是高性能的(所以没有JMS)易于实现和可靠,因此对象和数据只能绑定到一个线程?
欢迎任何想法!
你能澄清一下吗?您是指单个JVM中的IPC吗?(多个线程,是的,但在操作系统级别只有一个进程.)或者你的意思是多个JVM?(真正的操作系统级进程间通信.)
如果它是第一个,那么可能是java.util.concurrent之外的东西,比如ConcurrentLinkedQueue就可以了.(我通过java.util.concurrent中的类在我的线程中传递消息并成功.)
如果是后者,那么我将只是猜测并建议看一下RMI,虽然我认为它没有资格完全可靠 - 你必须管理那些更多的'动手'之类的.
假设场景1 JVM,那么多个线程确实是java.util.concurrent的地方,特别是各种Queue实现.然而,除此之外的抽象可能很好,并且Jetlang看起来非常有趣,轻量级Java消息传递.