startTrains() - > TotalDist = 100, 列車= [trainA,trainB], PID =產卵(樂趣() - > 列車(1,長度(火車)))結束時, [PID! {self(),TrainData,TotalDist} || TrainData < - 列車], 接收 {_From,MESG} - > error_logger:info_msg( 「〜n的MESG〜p〜n的」,[MESG]) 後10500 - > 刷新 端。如何使進程在Erlang中並行運行?
因此,我創建了名爲trainA,trainB的兩個進程。我想將這些過程增加5,直到它達到100.我製作了不同的過程,以使每個火車(過程)平行地增加其位置。但我很驚訝地得到輸出,即過程訓練A結束然後過程訓練B開始。但我想同時增加自己。 我想這樣
trainA 10 trainB 0
trainA 15 trainB 5
....
trainA 100 trainB 100
運行的進程,但我m到處
trainA 0
....
trainA 90
trainA 95
trainA 100
trainA ends
trainB 0
trainB 5
trainB 10
.....
trainB 100
如何使流程並行運行/同步?希望你得到我的Q。請幫幫我。
謝謝TON! :) 你讓我今天一整天都感覺很好。我在Erlang爲我的大師寫了「防碰撞鐵路系統」。我想演示我的調度器來模擬火車。是的,你是絕對正確的!我只是創建一個進程併發送兩個列車進程來運行(這確實是一個連續運行)。 – iankits 2010-04-21 14:51:56