[問題] 關於副程式停止問題

看板C_and_CPP作者 (Light)時間12年前 (2013/04/13 20:22), 編輯推噓1(102)
留言3則, 3人參與, 最新討論串1/1
如何主程式呼叫副程式(test1)後 副程式(test1)再去呼叫一個多個任務的副程式(test2) 例如這個副程式(test2)架構為 void test2(void) { 任務1; 任務2; 任務3; 任務2; 任務1; .. .. .. } 要如何進入這個副程式後執行第一行(任務1)後,回到上一個副程式,去判斷完某個事件, 假如某個事件成立回到主程式重新做其他事情,否則又再次回到test2副程式,而執行第二 行(任務2),執行完一樣再次回到上一個副程式判斷,做到test2全部結束。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.167.167.82

04/13 20:27, , 1F
你把test2每一個任務拆成小部份
04/13 20:27, 1F

04/13 22:05, , 2F
或許可以考慮用 FSM 的架構
04/13 22:05, 2F

04/13 23:32, , 3F
這邊用coroutine是最漂亮的,可以用boost::coroutine
04/13 23:32, 3F
文章代碼(AID): #1HQKt-7D (C_and_CPP)