UI スレッドは、Webkit を使用している場合は別の方法で処理できるため、Webkit に似た種類の UI またはプレーンな Windows フォームです。またはデリゲートを使用してみてください。または、最終的に何もうまくいかない場合は、while ループを実行して、新しい入力がないかベクターをチェックし、スレッド コールバック関数からベクターに追加できます。
デリゲートを使用できれば幸いです。(ポインター機能)
ポインター関数のサンプル コードを次に示します。
次のような関数を定義します。
typedef boost::function<void(std::string)> fnLog;
または、特にWindowsに行きたい場合は、
typedef void (__stdcall *fnLog)(char* val);
fnLog は std::string パラメータを持つ関数です。次に、UIスレッドにある関数をポインター関数にバインドします
fnLog myPointerFunc = boost::bind( &UI::f1, _1);
それから合格
myPointerFunc
コールバックとして。
詳細については、http://www.radmangames.com/programming/how-to-use-boost-function を参照して
ください。