La función Can Fork() se puede utilizar para replicar un proceso multiproceso. Y si es así, ¿todos los hilos serán exactamente iguales y si no, por qué no? Si la replicación no se puede hacer a través de un tenedor, ¿hay alguna otra función que pueda hacerlo por mí?Horquilla multiproceso
Respuesta
Después de un tenedor, solo se está ejecutando un subproceso en el elemento secundario. Este es un requisito estándar POSIX. Ver the top answer a la pregunta fork and existing threads ?.
No, el niño solo tendrá un hilo. Bifurcar un proceso enhebrado no es trivial. (Consulte este artículo Threads and fork(): think twice before mixing them para obtener un buen resumen).
No conozco ninguna forma de clonar un proceso y todos sus hilos, no creo que eso sea posible en Linux.
+1, publicación de blog muy informativa. – DarkDust
Nº
Un tenedor crea un nuevo proceso con su propio hilo (s), copia el descriptor de archivo y la memoria virtual.
Un proceso secundario NO comparte la misma memoria con su padre. Entonces esto no es lo mismo
- 1. funciones horquilla FMAP
- 2. Sobrecarga de la horquilla()
- 3. Perl - horquilla responsable
- 4. Implementación de horquilla
- 5. Submódulo o horquilla Git
- 6. Cómo depurar scripts de Perl que horquilla
- 7. Diferencia de rendimiento para multiproceso y multiproceso
- 8. Concepto de horquilla en C#
- 9. Horquilla - ¿mismas direcciones de memoria?
- 10. ¿Debo usar horquilla o hilos?
- 11. ¿Cómo se implementa el multiproceso de Python en Windows?
- 12. Aplicaciones multiproceso
- 13. multiproceso JDBC
- 14. Multidifusión SSIS - Espere a que termine una horquilla antes de ejecutar la horquilla siguiente
- 15. ¿equivalente de clon de la horquilla?
- 16. ¿Qué horquilla/versión de MySQL elegir?
- 17. Tubería de implemento ("|") usando C .. (horquilla utilizada)
- 18. señal de llamada después de la horquilla
- 19. Rendimiento y perfilado multiproceso
- 20. Python multiproceso: Permiso denegado
- 21. ¿Es JavaScript multiproceso?
- 22. SQLite Acceso multiproceso
- 23. Compresión multiproceso en C#
- 24. JavaScript multiproceso en IE6?
- 25. Programa Strace multiproceso
- 26. Patrón de observador multiproceso
- 27. Acceso multiproceso al archivo
- 28. Diseño multiproceso de Python
- 29. PHP multiproceso con libevent
- 30. NamePipeServer multiproceso en C#
¿Has visto [esta pregunta] (http://stackoverflow.com/questions/1235516/fork-in-multi-threaded-program)? ¿O [este] (http://stackoverflow.com/questions/1073954/fork-and-existing-threads)? Básicamente, solo el '' fork() 'hilo de hilo sobrevive en el proceso secundario. ¿Qué estás intentando lograr? – Zecc
En realidad, estaba tratando de crear un proceso replicado para una ejecución confiable, donde el proceso replicado verificara las salidas del proceso primario ejecutando el mismo código. – MetallicPriest