Firefoxのステータスメッセージをプラグインコードから更新する際に問題が発生しました。Firefoxのステータスメッセージをどのスレッドからも更新するにはどうしたらいいですか?
ドキュメントでは、NPN_Status
を呼び出すと、メインスレッドから呼び出されたときにのみ機能します。私の要件は、Firefoxプロセス内の任意のスレッドからステータスを更新することです。
助けていただけたら幸いです!
Firefoxのステータスメッセージをプラグインコードから更新する際に問題が発生しました。Firefoxのステータスメッセージをどのスレッドからも更新するにはどうしたらいいですか?
ドキュメントでは、NPN_Status
を呼び出すと、メインスレッドから呼び出されたときにのみ機能します。私の要件は、Firefoxプロセス内の任意のスレッドからステータスを更新することです。
助けていただけたら幸いです!
スレッドセーフなルールの一部に違反するため、スレッドから更新することはできません。更新プログラムをメインスレッドにプロキシする必要があります。
sdwilshと同様に、NPN_*
関数はメインスレッドからのみ呼び出す必要があります。 NPN_PluginThreadAsyncCall
はGecko 1.9でのみ導入され、現在のすべてのブラウザでサポートされていません。
回避策は、プラットフォームに依存します。Windows上の
performSelectorOnMainThread
あなたはこのプロキシの事を達成することができる方法上の任意のコード例/詳細を私に提供することができます? – atVelu
https://developer.mozilla.org/en/NPN_PluginThreadAsyncCallを使用することができますが、わかりません。 – sdwilsh