celluloid / celluloid-zmq

UNMAINTAINED: See celluloid/celluloid#779 - Celluloid actors that talk over the 0MQ protocol
https://celluloid.io
MIT License
83 stars 25 forks source link

ActorProxy is used for suspending IO tasks #20

Closed halorgium closed 11 years ago

halorgium commented 11 years ago

I just realized that celluloid-zmq probably has this same terrible behavior as celluloid-io had.

celluloid-io@015fa7dba66e90572645b51df7c22ccc50914020 celluloid-io@c28e5a2a185703401a6494af5b33514868989af0

Here is one, I think.

CootCraig commented 11 years ago

celluloid-zmq has been crashing for me, so I've attempted a fix. My ruby

$ jruby -v jruby 1.7.4.dev (1.9.3p392) 2013-04-16 cb556ed on Java HotSpot(TM) 64-Bit Server VM 1.8.0-ea-b80 +indy [linux-amd64]

I have made a fork with a wait_readable that uses the Celluloid::ZMQ mailbox.reactor. This has worked on my first test. See https://github.com/CootCraig/celluloid-zmq

https://github.com/CootCraig/celluloid-zmq/blob/master/lib/celluloid/zmq.rb

halorgium commented 11 years ago

@CootCraig great. it might make sense to extract the evented? method into the module and then use that in those methods. This would be a great change for celluloid-io too :grinning: https://github.com/celluloid/celluloid-zmq/blob/master/lib/celluloid/zmq/sockets.rb#L41-L48

See celluloid/reel#44 for some suggestions for using branches with bugfixes, etc.

halorgium commented 11 years ago

Moved to #21