17. Execução Concorrente¶
Os módulos descritos neste capítulo fornecem suporte a execução simultânea de código. A escolha apropriada da ferramenta dependerá da tarefa a ser executada (CPU bound ou IO bound) e do estilo de desenvolvimento preferencial (multitarefa cooperativa orientada a eventos versus multitarefa preemptiva). Eis uma visão geral:
- 17.1.
threading
— Paralelismo baseado em Thread - 17.2.
threading
— Paralelismo baseado em processo- 17.2.1. Introdução
- 17.2.2. Referência
- 17.2.2.1.
Process
and exceptions - 17.2.2.2. Pipes and Queues
- 17.2.2.3. Diversos
- 17.2.2.4. Connection Objects
- 17.2.2.5. Synchronization primitives
- 17.2.2.6. Shared
ctypes
Objects - 17.2.2.7. Gerenciadores
- 17.2.2.8. Proxy Objects
- 17.2.2.9. Process Pools
- 17.2.2.10. Listeners and Clients
- 17.2.2.11. Authentication keys
- 17.2.2.12. Gerando logs
- 17.2.2.13. The
multiprocessing.dummy
module
- 17.2.2.1.
- 17.2.3. Programming guidelines
- 17.2.4. Exemplos
- 17.3. O pacote
concurrent
- 17.4.
concurrent.futures
— Iniciando tarefas em paralelo - 17.5.
subprocess
— Gerenciamento de subprocessos - 17.6.
sched
— Event scheduler - 17.7.
queue
— A synchronized queue class
A seguir, os módulos de suporte para alguns dos serviços acima: