|
|
|
[
Permlink
| « Hide
]
Charles Oliver Nutter - 24/Feb/08 08:48 PM
Confirmed....MRI does these reads as non-blocking, waiting for the IO to become readable via a select. In our case, I would have expected that having separate native threads would serve the same purposes, but it appears that the blocking on gets interferes with the puts calls. Researching a bit.
I think the proper way to fix this is by making our IO use a Selector for most operations. But I've been unable to determine the proper way to safely manage one or more Selector instances to be used by multiple threads. My current theory goes like this:
Questions in my mind, which we'll need to research:
I think that this same issue im having, and it more or less renders xmpp4r lib/gem useless under jruby.
Xmpp4r spawn a read thread that waits, and then sends message to the server, at this point the write blocks and here we stop .. Let me know if i can help with any more information and tests, tried that on jruby1.1.3 and fresh svn checkout on osx leopard (java build 1.5.0_13-b05-237), Regards, |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||