crosstalk
An extremely lightweight, topic-based (publisher / subscriber model), cross-thread, in-memory communication library using flume.
use thread;
use HashMap;
use AsTopic;
// required for crosstalk topic
// required for crosstalk data
// required for crosstalk data
init! ;
// TopicZoo::Topic6 not included: defaults to String
Why crosstalk?
All mpmc libraries focuses on a single FIFO channel, rather than broadcasting using topics; similar to any other pub/sub model. Crosstalk is used to dynamically create and destroy publishers and subscribers at runtime, across multiple threads. Crosstalk is a lightweight wrapper of flume, which does all the heavy lifting. Realistically crosstalk could wrap any mpmc library, but we decided on flume due to its simplicity, flexibility, and performance with handling unbounded channels.
License
Crosstalk is released under the MIT license http://opensource.org/licenses/MIT