Concurrency_Programming

【Python教學】淺談 Concurrency Programming

發佈於 1 則留言分類: 02 Python 基礎教學03 Python 爬蟲教學10 所有文章

一. 為什麼需要 Concurrency ? 簡單來說 Concurrency Programming 就是能在同一時刻做兩件以上事情的能力,例如使用不同 CPU 分別運行程式來提高效率 ,或是當程式在等待執行結果時 (如等待 request 請求),先執行其他程式函式 (Coroutine),把浪費的 CPU 週期充分利用! 我們來看看 Golang 開發者之一 Rob Pike 對 Concurrency 的定義: Concurrency is about dealing with lots of things at once.Parallelism is about doing lots of things at once. Concurrency is not Parallelism […]

python_coroutine_協程

【Python教學】淺談 Coroutine 協程使用方法

發佈於 1 則留言分類: 02 Python 基礎教學03 Python 爬蟲教學10 所有文章

本篇大綱: 什麼是 Coroutine (協程 / 微線程)? 使用 Python asyncio library 寫 Coroutine 一個簡單的範例 了解 async / await 語法糖 如何建立事件循環? 如何建立任務 Task? 如何同時運行多個 Tasks 任務? 一. 什麼是 Coroutine (協程 / 微線程)? 先來看看 Python官方對 Coroutine 的解釋: Coroutines are a more generalized form of subroutines. Subroutines are entered at one point and exited at another point. Coroutines can be entered, ex […]