SpiderMonkeyでスレッドデバッグダンプを有効にしようとしています。 jsinterp.cppファイルを編集しています。基本的には、次のように私は をやろうとしています物事は、次のとおりです。Spidermonkeyのスレッディング
- は(解釈のメインループの前にJSScriptをキャッチ)が始まります。
- 別のスレッドを開きます。
- このスレッドでは、スクリプトでjs_Disassembleを呼び出して マシンコードを取得します。
- マシンコードをファイルに書き込みます。
スレッド化されたバージョンを試す理由は、単にパフォーマンスのためです。 問題です。 disassmebleを実行して の出力を同じスレッドに書き込むと、いくつかのアドオンが「応答なし」になります。単一の スレッドで出力を得ることができますが、それは遅すぎます。
私はhttps://developer.mozilla.org/en/Making_Cross-Thread_Calls_Using_Runnables のチュートリアルに従ってスレッドを作成しました。しかし、私が構築したとき、私は11 "未解決の 外部シンボルエラーに直面した。再び、いくつかのグーグルの後に、私は XPCOM_GLUEを#define XPCOM_GLUE 1で設定していました。しかし、今度は に "base class nsRunnable not defined"という新しい問題があります。私は 解決策を見つけることができません。
ご協力いただければ幸いです。 ありがとう、