搞懂 Python 協同程序(Coroutine): 快樂學會非同步程式開發

  • 2018/10/13(Sat) 13:30(+0800) ~ 16:30(+0800) ( iCal/Outlook, Google Calendar )
  • 微程式科技--夢森林 / 台中市市政路402號7樓 (請於一樓換取感應卡後右側電梯上樓)
  • 28 / 40
  • Taichung.pyContact Organizer

活動摘要

搞懂 Python 協同程序(Coroutine): 快樂學會非同步程式開發

單一執行緒(single-threading)底下允許程式來決定程式執行的順序,是基於協同程序(Coroutine)來實現非同步的其中一種策略。因為 Python(CPython) 的 GIL(Global Interpreter Lock) 特性,這個方法提供了解決某些類型非同步問題。

Python 基本上是以同步程式開發精神為設計,因此 Python 非同步開發與同步開發是兩種不同的思維與世界。本次將會分享 Python 使用協同程序開發非同步與其概念,並且如何手寫一個協同程序,接續介紹 3.5 版後的 async 與 await 語法所創造的協同程序。

分享的最後會以一個 Serial port 範例來 Demo 如何快快樂樂實現 Python 非同步程式開發。

 

內容大綱:

  • 非同步的策略介紹
  • 非阻塞式事件驅動與 Coroutine 的非同步策略
  • 協同程序(Coroutine)是什麼?可以吃嗎?(透過一個同步且阻塞式的 Socket 範例程式做說明)
    • Non-blocking I/O
    • Callback
    • Event loop
    • Coroutine
  • 登愣!async, await 登場
    • async 語法所創造協同程序
    • async 語法所創造產生器
    • 怎麼使用 asyncio 的 eventloop 來建立事件迴圈並開發非同步程式
  • Demo
    • serial port

議程:

13:30~14:00 :報到,彼此交流

14:00~16:00 :分享

講者

Jason

喜愛使用 Python 開發軟體,目前是一位資料與數據分析工程師。喜歡貓貓與狗狗,因此假日的嗜好就是帶著另一半去餵食浪浪們。

 

要收費嗎?

這次將酌收 100 元,補貼講師車馬費(活動報到時收取)

 

主辦者:Taichung.py

我們是一群台中Python程式語言的愛好者,希望在台中可以跟Python同好分享Python有關的訊息或活動,以及相關的技術或知識。

活動相關討論,歡迎加入:Taichung.py FB 社團

events: http://taichung-py.kktix.cc/

 

協辦單位:微程式 -- 夢森林

微程式 -- 夢森林

由微程式所提供中部優質交流的場域空間,偕同相關產業的夥伴以跨領域技術交流為目的,以知識傳遞 | 交流互動 | 價值創造為核心出發,共同打造中部深具影響力的科技服務交流生態圈。

Facebook:https://www.facebook.com/dreamforest.org

 

微程式科技--夢森林

台中市市政路402號7樓 (請於一樓換取感應卡後右側電梯上樓)

Event Tickets

Ticket Type Sale Period Price
一般票

2018/10/01 12:00(+0800) ~ 2018/10/13 12:00(+0800) End of Sale
  • Free
Next Step

28 Attendees

...And other 21 people