弦而時習之

淺談 Ruby 的 Fiber(九)

這篇文章我們會把 Broadcast (廣播)功能實作出來,如此一來我們就擁有了可以將訊息透過 Fiber 實作的伺服器廣播給其他使用者的功能。

而這系列文章也就到此告一段落。

淺談 Ruby 的 Fiber(八)

到這篇為止,我們已經完成了將 Fiber 應用在程式中的基本雛型,現在只需要將上週未完成的錯誤處理,我們就能獲得一個可以正常發送訊息到伺服器的伺服器。

淺談 Ruby 的 Fiber(七)

上週我們開始重構 Fiber 的結構,透過一個統一的 Selector 物件來選取這個「當下」可以進行 I/O 操作的物件。

不過,我們原本預期是因為使用 rescue 來捕捉錯誤控制流程才讓他運行不正常,經過一週的思考後,卻發現事情跟預想的不太一樣。

淺談 Ruby 的 Fiber(六)

經過前面幾篇文章的介紹,我們已經初步的了解 Fiber 的性質。這系列的文章目標是利用 Fiber 實現再不透過 Thread 或者 Process 的情境,來實現支援多人連線的 TCP 聊天伺服器。

從這一篇開始,我們就要正式的來挑戰完整的實作了!

淺談 Ruby 的 Fiber(二)

第一篇我們已經大致上了解 Fiber 的運作原理,不過要能夠實際上的掌握跟應用,我認為是需要靠實作來熟悉的。

所以,這一篇我們先來講學習 Socket 最常見的 TCP 伺服器實作吧!

淺談 Ruby 的 Fiber(ㄧ)

前陣子再研究 Ruby 從 1.9.3 就開始提供的 Fiber 該怎麼使用,不過網路上的資料大多都只是簡單的討論。那麼 Fiber 到底是什麼呢?這系列的文章會詳細的介紹 Fiber 的基本概念,還有一些可以應用的方式。