[Mona] 非同期タイマー
タイマーについていろいろな方に有意義なアドバイスと頂きました。
検討した結果、以前作った同期タイマーは破棄することになり、非同期タイマー機能を追加しました。
現時点のCVS版に追加されています。
使い方は以下の通りです。ぜひ感想をお聞かせください。
int MonaMain(List<char*>* pekoe) { dword id1 = set_timer(1000); dword id2 = set_timer(5000); printf("timer start\n"); for (int i = 0; i < 10; i++) { MessageInfo msg; if (Message::receive(&msg)) continue; switch (msg.header) { case MSG_TIMER: { printf("timer id = %x\n", msg.arg1); break; } } } printf("kill result=%d\n", kill_timer(id1)); printf("kill result=%d\n", kill_timer(id2)); printf("timer killed\n"); return 0; }