18. Interprocess Communication and Networking
The modules described in this chapter provide mechanisms for different processes to communicate.
Some modules only work for two processes that are on the same machine, e.g. signal and mmap. Other modules support networking protocols that two or more processes can use to communicate across machines.
The list of modules described in this chapter is:
- 18.1. socket — Low-level networking interface
- 18.2. ssl — TLS/SSL wrapper for socket objects
- 18.3. select — Waiting for I/O completion
- 18.4. selectors – High-level I/O multiplexing
- 18.5. asyncio – Asynchronous I/O, event loop, coroutines and tasks
- 18.5.1. Event loops
- 18.5.1.1. Event loop policies and the default policy
- 18.5.1.2. Event loop functions
- 18.5.1.3. Event loop policy interface
- 18.5.1.4. Access to the global loop policy
- 18.5.1.5. Run an event loop
- 18.5.1.6. Calls
- 18.5.1.7. Delayed calls
- 18.5.1.8. Creating connections
- 18.5.1.9. Creating listening connections
- 18.5.1.10. Watch file descriptors
- 18.5.1.11. Low-level socket operations
- 18.5.1.12. Resolve host name
- 18.5.1.13. Running subprocesses
- 18.5.1.14. UNIX signals
- 18.5.1.15. Executor
- 18.5.1.16. Error Handling API
- 18.5.1.17. Debug mode
- 18.5.1.18. Server
- 18.5.1.19. Handle
- 18.5.1.20. Example: Hello World (callback)
- 18.5.1.21. Example: Set signal handlers for SIGINT and SIGTERM
- 18.5.2. Tasks and coroutines
- 18.5.3. Transports and protocols (low-level API)
- 18.5.4. Streams (high-level API)
- 18.5.5. Subprocess
- 18.5.6. Synchronization primitives
- 18.5.7. Develop with asyncio
- 18.5.1. Event loops
- 18.6. asyncore — Asynchronous socket handler
- 18.7. asynchat — Asynchronous socket command/response handler
- 18.8. signal — Set handlers for asynchronous events
- 18.9. mmap — Memory-mapped file support