Para obtener una concurrencia real en Ruby o Python, necesito crear nuevos procesos. Python lo hace bastante sencillo utilizando el módulo multiprocessing
, que abstrae toda la bondad fork/wait y me permite concentrarme en mi código. Ruby tiene algo similar? En este momento estoy llamando al Process.fork
y al Process.wait
para obtener mi simultaneidad, y quiero una solución más limpia.¿Cuál es el equivalente de Ruby al módulo de multiprocesamiento de Python?
7
A
Respuesta
4
He usado https://github.com/grosser/parallel, y me gusta mucho. De manera predeterminada, #map o #each en todos los núcleos de su sistema. Debajo del capó hay una envoltura alrededor de Process.fork, que suena como lo que estás pidiendo.
+0
El único problema con Parallel es que no me permite hacer nada después de bifurcar. Siempre espera a que se completen las tareas. – dknight
0
https://github.com/pmahoney/process_shared, hágamelo saber si usted tiene alguna peticiones de características para ello :)
Cuestiones relacionadas
- 1. ¿Cuál es el equivalente de Python al "inspeccionar" de Ruby?
- 2. ¿Cuál es el equivalente Ruby de os.walk de Python?
- 3. ¿Cuál es el equivalente Ruby de "pythonic"?
- 4. Ruby equivalente al "dir" de Python?
- 5. ¿Cuál es el equivalente Ruby de python setup.py develop?
- 6. ¿Cuál es el equivalente de Groovy al dir de Python()?
- 7. Con el módulo de multiprocesamiento
- 8. ¿Cuál es el equivalente de Ruby de itertools de Python, esp. combinaciones/permutaciones/groupby?
- 9. ¿Cuál es el equivalente Python de Tomcat?
- 10. pitón -> módulo de multiprocesamiento
- 11. Cuál es el equivalente a "Método de referencia" en Ruby
- 12. ¿Cuál es el equivalente en Python de FindBin de Perl?
- 13. ¿Cuál es el equivalente en rubí del getattr de python?
- 14. ¿Cuál es el equivalente de Ruby para StringReader de Java?
- 15. ¿Cuál es el equivalente de Ruby de preg_quote()?
- 16. Ruby equivalente de Python setattr()
- 17. ¿Cuál es el equivalente Python de DBI de Perl?
- 18. ¿Cuál es el equivalente de Ruby de la salida de Python [: - 1]?
- 19. equivalente en Python de 'method_missing' de Ruby
- 20. Python equivalente de Perl/Ruby || =
- 21. ¿Cuál es el equivalente de Python de "perl -V"
- 22. ¿Hay un python equivalente al módulo arrancador de perl?
- 23. ¿Cuál es el equivalente de una docstring de Python en Ruby?
- 24. ¿Cuál es el equivalente de la cadena de ruby inspeccionar() en python
- 25. ¿Cuál es el equivalente de issubclass de instancia en python?
- 26. Ruby LESS equivalente de gema en Python
- 27. ¿Cuál es el equivalente Python de Lame MP3 Converter?
- 28. ¿Cuál es el equivalente de C# al dynamic_cast de C++?
- 29. ¿Cuál es el equivalente de C# al "self ::" de PHP?
- 30. ¿Qué es el equivalente "sys.stdout.write()" en Ruby?
No es realmente una respuesta a la pregunta, pero: Rubí utiliza hilos nativos desde hace un tiempo, por lo que las discusiones son en realidad una muy buena manera de conseguir " "concurrencia" real Además, no necesita preocuparse por estructuras de datos compartidas, etc. (aparte de la seguridad de hilos obvia) –
¿Ya ha pasado por este [uno] [1]? [1]: http://stackoverflow.com/questions/855805/please-introduce-a-multi-processing-library-in-perl-or-ruby – Bourne
@Niklas: estoy atascado con Ruby 1.8 en el trabajo :( –