Amo Chen

你知道 asyncio 的 event loop 是怎麼 loop 的嗎?談 event loop 的排程與執行

開發過 asyncio 相關應用的人,想必都知道 event loop 的重要性。

然而,你是否具體研究過 event loop 的程式碼,並了解它是如何運作的呢?

深入理解 event loop 不僅能幫助我們解決意料之外的問題,還能讓我們使用 asyncio 時更得心應手!

閱讀本文,讓我們跟 event loop 一起 loop 起來!

Posted on  Jun 20, 2024  in  Python 程式設計 - 高階  by  Amo Chen  ‐ 8 min read

極簡 macOS 目標設定工具 — One Thing

達成遠大的目標有各式各樣的方法,其中最簡單的方法是: 設定/寫下目標 將目標放在觸目可及的顯眼地方,藉此不斷提醒自己 不斷地做出向目標前進的抉擇與

Posted on  Jun 19, 2024  by  Amo Chen  ‐ 1 min read

黃仁勳的專訪

這是 1 部值得花 47 分鐘收看的黃仁勳專訪。 透過這場專訪不僅可以了解黃仁勳對於 AI 的未來願景與想像,也能對所有開發者的未來有一些啟示。 “This is a

Posted on  Jun 18, 2024  by  Amo Chen  ‐ 2 min read

用 Python 學網路程式設計重要概念 — 從多執行緒到 Multi-process, Pre-fork 再到 Multi-process 混搭 Multi-thread

在這篇文章,我們將結合先前所學到的知識,更深入地探討網路程式設計中的一些重要概念,特別是使用 Python 從多執行緒架構開始,逐步過渡到 multi-process 和 pre-fork 技術,最終結合 multi-process 和 multi-thread,形成混合式架構。

通過這些過程,我們不僅能理解這些技術背後的原理,還能掌握網路程式設計中的核心技術,並將這些概念融會貫通,為開發高效能的網路應用打下堅實的基礎。

Posted on  Jun 17, 2024  in  Python 程式設計 - 中階  by  Amo Chen  ‐ 8 min read

免費開源的 macOS 工具 — Later

Later 是能夠 1 鍵隱藏/關閉所有視窗的工具。 ​ Later 的應用場景很簡單, Later 可以讓使用者要開會之前或者進行其他工作之前,先把桌面上所有視窗存起來之後,並將

Posted on  Jun 16, 2024  by  Amo Chen  ‐ 1 min read

全新品種的 Shell — Nushell

Nushell 是 1 個相對新的 Shell, 與其他 shell 相比,它更強調把各種指令的輸出變成結構化資料,如此一來就可以像查詢資料庫一樣,搭配同樣是 Nushell 開發的 where, filter, sort-by 等指令,讓操

Posted on  Jun 15, 2024  by  Amo Chen  ‐ 1 min read

用 Python 學網路程式設計重要概念 — 從 I/O 多工再到多執行緒以及 Thread Pool

在「用 Python 學網路程式設計重要概念,從單執行緒到 I/O 多工(I/O multiplexing)」 1 文中,我們利用多個 Python 範例程式學會 I/O 多工的 3 種 syscall, 分別是 select() , poll() 以及 epoll() ,藉由 I/O 多工讓程式即使只有單執行緒也能同時處理多個連線。

本文將從 I/O 多工開始,進一步延伸學習多執行緒以及 Thread Pool 這 2 個經典的網路程式設計架構。

Posted on  Jun 14, 2024  in  Python 程式設計 - 中階  by  Amo Chen  ‐ 8 min read