タスクシステム総合スレ part9
■ このスレッドは過去ログ倉庫に格納されています
0070名前は開発中のものです。
2010/01/01(金) 08:12:20ID:PCKniPZBメリット:
多数のFSMを逐次実行するための一手段になる
簡単な古典TS(>>2の「最も基本的なTCBの構造」だけで済むTS)ならコードはシンプル
MVCのMとCが分離されているため、タスクシステム(C)を実装すれば、
後は動的に実行される関数(M)の実装に専念できる
デメリット:
逐次実行するFSMの数が少ないならわざわざ使う必要が無い
各TCBのワーク領域割当に苦労する
ワーク領域を動的確保にする場合はガベージコレクトの問題が出る
簡単な古典TSには、TCB間の情報・イベント伝達や、親子関係を持たせる機能などが無い
これらを実装しようとすると、気持ち悪いコードになる可能性が高い
(TCBの逐次実行がウリなのに実行順序を無視したり、グローバル変数にアクセスしたり)
設計・実装にプログラマの良し悪しが出る
TCBから呼ぶ関数内でMVCのMとVを分離せず書くと、今時のプログラミングでは混乱しやすい
(特に、直接API(DirectX等)や、APIが比較的剥き出しになっているラッパーライブラリを使う場合)
■ このスレッドは過去ログ倉庫に格納されています