私はRhino 1.6r2をjavax.script
API経由で使用しています。 RhinoエンジンはMULTITHREADED:と主張しています。「エンジン実装は内部的にはスレッドセーフで、スクリプトは同時に実行されるかもしれませんが、あるスレッドでのスクリプト実行の影響は他のスレッド上のスクリプトで見えるかもしれません。Rhinoとjavax.script.ScriptEngineへの同時アクセス
私が知りたいのは、正確な条件の下で、あるスクリプトの実行の影響が別のものに見えるかどうかです。私のコードでは、ときどきScriptEngine
オブジェクトを再利用しますが、実行するたびに新しいSimpleBindings
を作成してeval(String, Bindings)
に渡します。この配置では、ある実行から別の実行に内部状態が漏れる可能性がありますか?もしそうなら、どうですか?
There's a very informative answer hereですが、かなり私に知っておくべきことを教えてください。
あなたは同じオブジェクトを結合していますか? – wort
複数の実行のために同じオブジェクトをバインドしていた場合は、明らかにすべてのオブジェクトで表示されます。しかし、いいえ、私はそれをやっていません。 –
正確に何を把握しようとしていますか?バインドされたオブジェクトが異なる別のバインディングを使用している場合は、それ以外の状態に関して何が関係していますか? – wort