tarosukeの日記: [talos]EvUpdate
日記 by
tarosuke
低優先度タスクでInvalidateするとEvUpdateの方が先に廻ってきちゃう問題だが...イベントハンドラはユーザプロセスより高優先度にしたいのでInvalidateするコンテキストの優先度を上げるとかディスパッチを禁止するとかはナシ。だとするとロックを使う事になるんだろうけどロックを解除するのは子クラスのインスタンスなのでプログラミング中の注意点が一つ増えるという誠に遺憾な状況になってしまう。
だとするならPANEのコンストラクタは「desktop.Register(this)」しないで、コンストラクタが全部走ってからイベントが走る「desktop.Register(new 窓)」とか、子クラスのコンストラクタで「desktop.Register(this)」するのが妥当なのかも知れない。というか全部フレームワーク側は同じだわねー。
--
てか違うし!登録する先はdesktopじゃなくて親PANEだし。
[talos]EvUpdate More ログイン