2012-03-07 47 views
3

我正在尋找適用於Java/Scala的ZeroMQ的任何包裝。我想向套接字添加回調,但默認情況下,zmq不提供此功能。只阻止操作'recv'。另一種方法是創建循環和用戶輪詢,但也許存在一些其他解決方案?Java/Scala的ZeroMQ回調

+3

你可能想看看Akka,特別是在akka-zeromq。 http://akka.io/docs/akka/2.0/scala/zeromq.html – drexin 2012-03-07 15:32:48

回答

2

爲什麼不創建一個簡單的演員,將採取在回調作爲構造精氨酸,然後就坐在一個:

while(running) { 
    callback (subscriber.recv(0).asInstanceOf[Array[Byte]]) 
} 

如果速度不是必需的,你也可以看看AKKA ZeroMQ模塊,它遵循傳統的非阻塞消息傳遞。然而,我發現它比香草JZMQ慢很多。

+0

類似於[ZeroMqReceiver]的示例(https://github.com/tolitius/market-watch/blob/master/ src/main/scala/org/gitpod/subscriber/zeromq/ZeroMqReceiver.scala),同時還傳入一個回調作爲構造函數arg – tolitius 2012-04-05 04:15:37