En POSIX, existe la función fork()
para crear un subproceso. ¿Cómo puedo lograr la funcionalidad de fork()
en Windows?¿Cómo puedo iniciar un subproceso en Windows?
Respuesta
No hay un equivalente directo de fork()
en Windows.
CreateProcess()
es la función nativa que se puede utilizar para crear un nuevo proceso (pero, de nuevo, la semántica es bastante diferente a la de fork()
).
Para decirlo de otra manera, en Unix es posible que un proceso cree a bajo precio un clon de sí mismo. No hay una forma económica de hacerlo en Windows.
Si no te importa el aspecto de clonación de fork()
, entonces CreateProcess()
debería funcionar bien.
Pero, ¿qué hay de diferente entre CreateProcess() y fork()? –
@Tu_JianWu: el nuevo proceso creado por fork() hereda el estado principal, incluido el valor de las variables y el puntero de instrucción actual. El nuevo proceso creado por CreateProcess() no, se inicia desde cero. También fork() solo puede crear una nueva copia del ejecutable que ya se está ejecutando, CreateProcess() puede ejecutar cualquier exectuable. –
@Harry Johnston: Gracias ... –
- 1. subproceso en Windows, acceso denegado
- 2. ¿Cómo puedo ejecutar XAMPP al iniciar en Windows?
- 3. Python - Subproceso - ¿Cómo llamar un comando Piped en Windows?
- 4. Salida del subproceso Python en Windows?
- 5. Cómo iniciar git daemon en Windows
- 6. stdout de subproceso sin búfer en Windows
- 7. ¿Cómo iniciar Tomcat con un servidor específico.xml en Windows?
- 8. ¿Iniciar un servicio de Windows deshabilitado?
- 9. ¿Cómo puedo pasar boost :: shared_ptr como un puntero a una función de subproceso de Windows?
- 10. Cómo iniciar un hilo de IU en C#
- 11. ¿Cómo iniciar un archivo python mientras se inicia Windows?
- 12. Iniciar llamada en Windows Phone 7
- 13. ¿Se está ejecutando un subproceso en iOS?
- 14. ¿Cómo iniciar Windows 'RegEdit con cierta ruta?
- 15. ¿Cómo puedo detectar cuándo sale un subproceso de cliente?
- 16. ¿Cómo puedo ejecutar de forma remota un script en Windows?
- 17. Cómo iniciar el servidor MySQL en Windows XP
- 18. ¿Cómo puedo iniciar animaciones CSS3 en un lugar específico?
- 19. ¿Cómo puedo iniciar sesión en un sitio web con Python?
- 20. ¿Cómo puedo iniciar sesión en un sitio web usando Python?
- 21. En Python 2.5, ¿cómo elimino un subproceso?
- 22. ¿Cómo iniciar desde Eclipse en baja prioridad en Windows?
- 23. Problema al iniciar un System.Diagnostics.Process en Windows 7
- 24. mongodb no se puede iniciar en Windows?
- 25. Cómo recuperar el id. De subproceso de un boost :: thread?
- 26. ¿Cómo redirigir stdout para un subproceso?
- 27. Iniciar automáticamente un servicio de Windows en la instalación
- 28. Iniciar un proceso con credenciales de un servicio de Windows
- 29. ¿Cómo puede un subproceso secundario notificar a un subproceso padre de su estado/progreso?
- 30. Cómo obtener el entorno de un subproceso en Python
¿Qué quieres saber? ¿Cómo crear una programación de subprocesos en Windows? – Mithrandir
oh, no, tengo un problema cuando estudio Linux ... En Windows, podemos usar la función CreateThread (...) para crear un hilo. Pero en Linux, hay una función fork() para crear un proceso hijo, quiero saber si hay una función similar a fork() en Window ... –
Hasta donde sé, puedes usar _spawn(), _beginthread () y _endthread(). – Mithrandir