赞
踩
asyncio 模块获得了许多新的特性、可用性和 性能提升。 重要的改变包括:
新的 暂定 asyncio.run() 函数可被用于通过自动创建和销毁事件循环以基于同步代码运行协程。 (由 Yury Selivanov 在 bpo-32314 中贡献。)
asyncio 增加支持 contextvars. loop.call_soon(), loop.call_soon_threadsafe(), loop.call_later(), loop.call_at() 并且 Future.add_done_callback() 具有新的可选仅关键字参数 context。 现在 Tasks 会自动跟踪其上下文。 详情参见 PEP 567。 (由 Yury Selivanov 在 bpo-32436 中贡献。)
增加了新的 asyncio.create_task() 函数作为 asyncio.get_event_loop().create_task() 的快捷方式。 (由 Andrew Svetlov 在 bpo-32311 中贡献。)
新的 loop.start_tls() 方法可用于升级现有的 TLS 连接。 (由 Yury Selivanov 在 bpo-23749 中贡献。)
新的 loop.sock_recv_into() 方法允许直接从套接字读取数据放入所提供的缓冲区,从而可以减少数据复制。 (由 Antoine Pitrou 在 bpo-31819 中贡献。)
新的 asyncio.current_task() 函数可返回当前运行的 Task 实例,以及新的 asyncio.all_tasks() 函数可返回给定循环中所有现存 Task 实例的集合。 Task.current_task() 和 Task.all_tasks() 方法已弃用。 (由 Andrew Svetlov 在 bpo-32250 中贡献。)
新的 暂定 BufferedProtocol 类允许通过手动控制接收缓冲区来实现流式协议。 (
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。