Skip to Content
Python 技術手冊 第三版
book

Python 技術手冊 第三版

by lex Martelli, Anna Martelli Ravenscroft, Steve Holden
January 2018
Intermediate to advanced
856 pages
17h 17m
Chinese
GoTop Information, Inc.
Content preview from Python 技術手冊 第三版
580
|
18 章 非同步的替代方案
callback-based
(以回呼為基礎)的 async 架構中,你的程式碼會將
每個預期的事件關聯至一個
callback
回呼
,它是這種非同步框架會
在事件發生時呼叫的一個函式或其他 callable。這個關聯可以是明確的
(傳入一個函式以請求在適當的時候回呼它),或以各種方式隱含產
生(例如擴充一個基礎類別,覆寫適當的方法)。Python 的標準程式
庫對於 callback-based async 架構的支援並不是特別強大,也不是最新
的,而我們不推薦它,也不會在本書中進一步涵蓋它;如果你想要使
用這種架構,我們推薦第三方的框架 Twisted
https://twistedmatrix.com/
trac/
)或更專門的 Tornado
http://www.tornadoweb.org/en/stable/
),
別適合用於 web 相關任務,還支援下一節會提到的 coroutines
第三種,最為現代的架構是
coroutine-based
(以協程為基礎)的 async
架構,涵蓋於下一節。
在本章中,解說了 coroutine-based async 架構的一般概念後,我們會涵蓋
僅限於 v3 的模組
asyncio
,它能讓你實作這種架構,也能實作 callback-
based 的架構,以及低階模組
selectors
(在 v3 的標準程式庫中,但 v2
能下載第三方的後向移植版),它能讓你實作多工架構。
基於 Coroutine
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

測試驅動開發|使用 Python

測試驅動開發|使用 Python

Harry J.W. Percival

Publisher Resources

ISBN: 9789864766819