2013-11-28

Concurrency

以前總覺得 concurrency 很難很酷,如 pthread 那樣精深,難上手。最近三年的工作經驗認識 asynchronous I/O,發現這是一種 concurrency,才覺得沒有這麼夢幻,覺得實用。我的工作經驗上,沒遇過 concurrency computing。

Computer Memory Hierarchy 解釋,CPU 以外的 I/O 都是很慢的,讓  CPU 等待是罪過,此決定掌握在 programmer 手上。

使用 aio 方式我用過幾種:
1) Object-C delegate
初體驗,也是啟發的框架。

2) go goroutine + channel
新語言的設計。

3) JavaScript ajax + callback
常見的方式。

自從開始有這些體驗,盡量落實每個動作都是 async,朝 C10M 邁進。