2009-04-02 13 views

Répondre

1

Combiner DRb, qui fournit une communication inter-processus simple, avec Queue ou SizedQueue, qui sont toutes deux des files d'attente threadsafe, devrait vous donner ce dont vous avez besoin.

Vous pouvez également consulter beanstalkd qui est également hébergé sur github

3

Je pense que vous pouvez faire beaucoup de ce que vous voulez utiliser les installations de Ruby IO; vous partagez entre les processus, pas les threads, correct?

Si c'est le cas, IO.pipe fera ce dont vous avez besoin. Ruby n'a pas de façon intégrée de gérer les files d'attente inter-processus (à ma connaissance), mais vous pouvez aussi utiliser des FIFO (si vous êtes sous Unix).

Si vous voulez quelque chose de plus fin, et avec un bon support de thread, je suis à peu près certain que vous pouvez superposer sur java.util.concurrent si vous utilisez JRuby. L'IRM a un très mauvais support de threading/concurrent, donc si c'est ce que vous cherchez, JRuby est probablement un meilleur endroit où aller.

+0

Je l'ai utilisé dans les deux perl et rubis. C'est génial. – gdanko

Questions connexes