精華區beta Programming 關於我們 聯絡資訊
> ==>發信人: Wiseman.bbs@bbs.cs.nthu.edu.tw (), 信區: programming > > 假如 dispatch_event 可以發出請求給另一部機器 X 做事, 只要發出通知, 不等事 > > 做完, 就回到 while loop . 而 event_occur() 的產生, 假設是由另一部機器 A > > 執行, 假如產生與否是跟前一個 event 無關的, 那這個新 event 就會由 dispatch > > 啟動出另一部機器 Y 去做事. 此時, X 與 Y 就可能會 "同時做不同的事". > X跟Y既是兩台機器 當然可以同時做不同的事 > 就算是同一台機器的同一個程式, 也有可能有兩個thread 同時執行類似以上的 > event loop. 但是重點是thread 本身是循序的.我想說明的是, 像gsj此類因為不了解 > framework內部的機制而誤認framework為非循序的, 是一件多麼可笑的事. > 循序化是gsj自己提出的, 他自己也無法給出一個完整的定義(沒有main() ? 哈哈) > 所以我也只是猜測他最可能的定義來反駁. 我想..任何一個有大腦的人都會知道 > 幾乎世界上所有的language,都是他所謂的循序化. 包括C++/C/Java/Pascal/Perl/Python 多數的高階語言都沒有 "敘述可同時或交錯執行" 的指述. 就 function/subroutine/procedure 的叫用言, 也是循序只做一件事, 一個段落沒被 執行完, 不會 "同時" 執行下一個段落, 即使是 RPC 也是儘力要維持這個習慣. 但如 果是 Asynchronous RPC , 雖然高階語言寫的成份沒有這種敘述, 卻透過 asnchronous RPC 就可能讓部份動作有 "平行處理" 現象. 多數循序語言是沒有這種成分的, 但外部 模組可以用其他語言(如組語或 CHHL) 敘述出這種情況, 而這種模組當然是可以被叫用 的. Concurrent High Level Language 相對言, 就有這種明顯的敘述成份. Java 語言對此部份, 可能就會有爭議, 很多文件多認為 Java 是 CHHL 的一種. -- ◎ Origin: 中央松濤站□bbs.csie.ncu.edu.tw From: 140.115.6.234