Python 异步编程面试题27 题
- 01 Python 中协程是什么?async 和 await 的作用是什么?
- 02 为什么不能在 async 函数里直接调用阻塞代码?会造成什么问题?
- 03 异步 Python 中数据库连接池怎么管理?为什么不能每个请求都新建连接?
- 04 asyncio 事件循环是什么?它在异步编程中负责什么?
- 05 asyncio.Lock、Event、Condition、Semaphore 有什么用?和 threading 里的同步原语有什么区别?
- 06 asyncio.Queue 如何实现异步生产者消费者模型?
- 07 asyncio.run 是做什么的?事件循环生命周期应该怎么管理?
- 08 asyncio.to_thread 和 run_in_executor 有什么用?如何在异步代码中处理阻塞任务?
- 09 Python 异步生成器是什么?async generator 和普通 generator 有什么区别?
- 10 Python 中直接 await 和 asyncio.create_task 有什么区别?
- 11 asyncio 中超时和取消任务怎么处理?CancelledError 要注意什么?
- 12 asyncio 中流式 I/O 和背压怎么理解?StreamReader、StreamWriter 怎么用?
- 13 asyncio.gather、wait、as_completed 和 TaskGroup 有什么区别?
- 14 asyncio.shield 有什么用?它能阻止任务被取消吗?
- 15 Python 中 async for 和 async with 的原理是什么?异步迭代器和异步上下文管理器怎么理解?
- 16 异步并发怎么限流?一次 gather 一万个任务会发生什么?
- 17 异步程序卡住了怎么排查?asyncio 的 debug 模式能做什么?
- 18 异步代码里怎么传递上下文?为什么不能用 threading.local?
- 19 asyncio 的任务会泄漏吗?怎么管理任务的生命周期?
- 20 asyncio 里任务的异常去哪了?为什么会出现 exception was never retrieved?
- 21 同步代码里怎么调用异步函数?两种代码怎么共存?
- 22 异步代码里怎么执行外部命令?asyncio 的子进程怎么用?
- 23 异步代码怎么测试?pytest-asyncio 和 AsyncMock 怎么用?
- 24 异步代码怎么做缓存?100 个请求同时打同一个 key 会怎样?
- 25 asyncio 各版本有哪些重要变化?老代码怎么迁移?
- 26 uvloop 是什么?换事件循环真的能让异步程序变快吗?
- 27 asyncio 的 Transport 和 Protocol 是什么?什么时候要用低层 API?
没有符合条件的题目。