在光纤之间传递消息 Quasar
Passing Messages Between Fibers Quasar
我正在使用类星体光纤来收听和处理 QueueObjectChannel
上的消息。我不确定我应该使用什么对象作为纤程之间的消息队列。我遇到的问题是我不明白应该将什么传递给 QueueObjectChannel
构造函数。根据 javadoc,构造函数应该采用 QueueObjectChannel(co.paralleluniverse.strands.queues.BasicQueue<Message> queue, Channels.OverflowPolicy policy, boolean singleProducer, boolean singleConsumer)
,但这似乎违反直觉,因为我正在尝试构建实现 BasicQueue
的东西。
我应该实现接口吗?
我对光纤间通信的理解完全不对吗?
通常人们想要(并且应该)使用通道 API,而不是后备队列。例如,不同的队列实现只能工作 and/or 仅适用于某些数据类型、线程 and/or 光纤、特定缓冲区配置、只有一个消费者等
作为 explained here just use the static Channels.new*Channel
methods 传递您需要的属性,您将获得一个由适合您的用例的队列支持的通道。
我正在使用类星体光纤来收听和处理 QueueObjectChannel
上的消息。我不确定我应该使用什么对象作为纤程之间的消息队列。我遇到的问题是我不明白应该将什么传递给 QueueObjectChannel
构造函数。根据 javadoc,构造函数应该采用 QueueObjectChannel(co.paralleluniverse.strands.queues.BasicQueue<Message> queue, Channels.OverflowPolicy policy, boolean singleProducer, boolean singleConsumer)
,但这似乎违反直觉,因为我正在尝试构建实现 BasicQueue
的东西。
我应该实现接口吗?
我对光纤间通信的理解完全不对吗?
通常人们想要(并且应该)使用通道 API,而不是后备队列。例如,不同的队列实现只能工作 and/or 仅适用于某些数据类型、线程 and/or 光纤、特定缓冲区配置、只有一个消费者等
作为 explained here just use the static Channels.new*Channel
methods 传递您需要的属性,您将获得一个由适合您的用例的队列支持的通道。