精華區beta Programming 關於我們 聯絡資訊
真是莫明其妙… ※ 引述《ikki.bbs@bbs.cis.nctu.edu.tw (深藍色的別離)》之銘言: : ==> 在 tester.bbs@bbs.csie.ncu.edu.tw (try or test) 的文章中提到: : > 假設程式的處理過程如下: : > S1. input (a,b); : > concurrent_begin : > S2. r1 <- C1(x:=a); : > S3. r2 <- C2(y:=b); : > S4. r3 <- C3(p:=a, q:=b); : > concurrent_end : > S5. r4 <- C4(x1:=r1, x2:=r2, x3:=r3) ; : > S6. output(z:=r4); : 假設劇情的綱要如下: : S1. 地球聯合與札夫特進行遭遇戰 : 戰爭開始 : S2. 克魯澤打爆囉囉機 : S3. 阿濕男打爆死小孩 : S4. 魔王機打爆笨蛋龜, 偽好球 : 戰爭結束 : S5. 卡卡莉宣稱歐布打爆死小孩,笨蛋龜,偽好球 : S6. 大天使號返航 : > 這個例子 C1(x) , C2(y) , C3(p,q) 彼此是無關的, 所以 S2, S3, S4, : > 不必循序, 是可以併行的. 執行序是 S4 S2 S3 或 S2 S4 S3 都不影響結果, : > 所以做了 concurrent begin 與 end 的聲明或註解. : > 假如, C1(x) , C2(y) , C3(p,q) 是非常耗時的處理計算, 又是 class object : > 的形式, 那麼獨立無關的 C1 C2 C3 做為 distributed object 就很自然能配合 : > 多機運算. : > 假如叫用 C4 是用訊息傳送 r1, r2, r3 帶入, 再將結果用訊息傳送帶回給 r4, : > 當 r1 , r2 , r3 無法同時一起得到結果時, 進一步假設這個訊息傳送機制會等 : > 候 instance data 齊全才會叫用 C4 , 此時的訊息傳送機制就能省略 : > "concurrent_end" 的聲告, 依然正確運作. : 這個例子 克魯澤 阿濕男 魔王機 彼此是獨立作戰的, 所以 S2, S3, S4 不必循序 : 是可以同時開打的, 開打順序是 S4 S2 S3 或 S2 S4 S3 都不影響戰果, 所以做了 : 戰爭開始與戰爭結束的標記 : 假如 克魯澤, 阿濕男, 魔王機 的攻擊非常耗時沒有效率, 又是爆種的狀態下, 那麼 : 獨立作戰的 coordinator 配音員就很自然的會被噓下台領便當去 : 假如卡卡莉是用專用頻道通知戰果, 再將戰果宣告成自己的, 當三台廢柴機無法同 : 時打爆死小孩們時, 進一步將這個訊息傳回大天使號, 大天使號會等候便當備齊後通知 : 拂曉, 此時戰爭結束的標記就可以被省略...所有的人都可以去吃便當了... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.164.27.5