this is part of the stack i get when executing a compiled scripts:

ScriptRuntime.name(Context, Scriptable, String) line: 1671
c43._c0(c43, Context, Scriptable, Scriptable, Object[]) line: 5
c43.call(Context, Scriptable, Scriptable, Object[]) line: not available
WebClient$1(ScriptEngine).executeFunction(Function, Scriptable, Scriptable,
Object[], boolean) line: 360

and if i do on the script setParentScope(null)

then in that ScriptRuntime.name() it has a null pointer because the
Scriptable scope param is null
So it sends there the parent scope. Problem is it shouldnt do that as far as
i can see

It should use the Scope or the This object that is given to the call
method... Thats the state the script should use to get some data

johan


On Tue, Dec 9, 2008 at 10:26, Johan Compagner <[EMAIL PROTECTED]> wrote:

> Hi,
>
> We use rhino also on the server and every http session has its own script
> engine (cx.initStandardObjects(null))
>
> But we notice when we have let the scripts compile
> (cx.setOptimizationLevel(9)) for very client/http sesssion that we are
> running out of perm space
> because of the many classes generated (and maybe not cleared fast enough or
> hold on to at some point)
>
> now i could build that the compile takes place and caches our scripts once
> for every client/session.
> But then a (compiled) script can run concurrently with others, so my
> question is does a script has internal state like a stack pointer or other
> data?
> So that this cant really be done?
>
> johan
>
>
>
>
_______________________________________________
dev-tech-js-engine-rhino mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-tech-js-engine-rhino

Reply via email to