data l'assenza di una chiamata di Windows fork(), come sta il pacchetto multiprocessing in Python 2.6 implementata in Windows? Oltre ai thread di Win32 o una sorta di forcella falsa o solo la compatibilità in cima al multithreading esistente?In che modo il Multiprocessing Python è implementato su Windows?
risposta
Si utilizza una chiamata di sottoprocesso a sys.executable (vale a dire avviare un nuovo processo Python) seguita dalla serializzazione di tutti i globals e dall'invio di quelli sul pipe. La clonazione di un povero del processo attuale. Questa è la causa della extra restrictions trovato quando si utilizza multiprocessing su Windows plaform.
Potreste anche essere interessati ad esaminare Jesse Noller's talk from PyCon circa multiprocessing in cui si discute il suo utilizzo.
Adam è corretto (sono Jesse) - è sfortunato, ma tutte le "implementazioni" di fork su win32 sono orribili hack. Pertanto abbiamo bloccato con il sottoprocesso e la serializzazione – jnoller
Grazie mille per una risposta chiara! –
Jeff: dovresti contrassegnare questa risposta come accettata se sei soddisfatto. – Adam
- 1. Python Multiprocessing RuntimeError su Windows
- 2. RuntimeError su Windows che tenta il multiprocessing di python
- 3. Multiprocessing su interruzioni di Windows
- 4. In che modo OpenGl è implementato in un sistema operativo?
- 5. In che modo getClass() è implementato in java?
- 6. Celery è efficiente su un sistema locale dato che il multiprocessing di Python è?
- 7. In che modo end() è implementato nei contenitori STL?
- 8. Come è implementato il fractions.limit_denominator di python?
- 9. python multiprocessing
- 10. Python multiprocessing stdin ingresso
- 11. Qual è il modo migliore per dividere file di grandi dimensioni in Python per il multiprocessing?
- 12. Perché gmtime è implementato in questo modo?
- 13. "select" su più code Python multiprocessing?
- 14. Perché il modulo di multiprocessing di Python importa __main__ all'avvio di un nuovo processo su Windows?
- 15. eccezione Finding in python multiprocessing
- 16. In che modo multiarray.correlate2 (a, v, mode) viene effettivamente implementato?
- 17. python multiprocessing pool terminate
- 18. Il multiprocessing in Python è un modo semplice per implementare un semplice contatore?
- 19. Multiprocessing di Python che porta a molti processi di zombi
- 20. Perché il tubo multiprocessing Python non è sicuro?
- 21. Progettazione multiprocessing Python
- 22. In che modo workflowy ha implementato la modifica in linea?
- 23. Rileva in modo affidabile Windows in Python
- 24. Locks multiprocessing Python
- 25. Come eseguire il multiprocessing per una singola funzione in Python?
- 26. Python 2.7 su Windows, "affermare main_name non in sys.modules, main_name" per tutti gli esempi Multiprocessing
- 27. Come viene implementato LongAccumulator, in modo che sia più efficiente?
- 28. Perché la multiprocessing di Python è in esecuzione in sequenza?
- 29. python: multiprocessing Event
- 30. Python non nltk.clean_html implementato
Se Adam ha risposto alla tua domanda, dovresti contrassegnarlo come accettato :-) –