我正在使用電梯仿真的設計。我有一個電梯控制器和一系列升降機。升降機在特定狀態(例如STATIONARY,MOVING,DOORS_OPEN等)中移動。 - 在MOVING狀態下,升降機過程將簡單地休眠X毫秒。我目前主要關注電梯控制器過程和電梯過程集合之間的交互。另一個電梯(電梯)仿真建模問題
本質上,電梯控制器需要協調電梯,因此需要發出電梯請求並確定哪個電梯最適合服務該請求,然後通知該電梯。
我最初的想法是讓每個電梯在樓層請求收據上移動通過各種狀態,然後在電梯控制器完成移動到特定樓層後通知電梯控制器。然而,通過這樣的設計,電梯控制器可以查詢電梯以查看其附近的哪個樓層,對該電梯做出決定(即,停在下一層樓),但是當它告訴電梯停止時,電梯可能有移動過去的那一層(由於說網絡點而延遲)。
爲了避免這些類型的問題(電梯控制器根據過時信息做出決定),我想讓電梯控制器負責將每個電梯的狀態移動。通過這個模型,電梯控制器知道電梯處於什麼狀態,告訴它進行轉換,然後知道後面會處於什麼狀態。因此,電梯控制器始終具有電梯正在執行的最新信息,其動作永遠不會與各個電梯狀態不同步。
人們對這種類型的方法有任何的擔憂(線程,可伸縮性)嗎?有沒有更好的建模方法?思想歡迎!
爲什麼你想首先使用多線程?聽起來像是不必要的複雜性,除非你真的需要表現。 – CodesInChaos 2011-05-29 21:20:19
多線程,因爲這是它在實踐中的工作方式 – 2011-05-30 06:36:32