Unfortunately, no scripting language we have encountered
has ever done proper threading to the point that you could even begin to do
that.

Lua is one of the better ones in a threaded env only because they solved the
problem by making a tiny VM that
can be easily reproduced thousands of times.  You still can't share a lua vm
across threads or it will crash because they
use lots of setjmp longjmp calls to travel between their virtual stack and
the real one.

As a matter of fact, spidermonkey has code that tries to be threadsafe (but
you have to enable it, --with-threadsafe makes me nervous =]) and it shares
as much as it can already and we have debated changing it so it creates a
whole
JS instance per call just because of all the garbage collection and thread
safety issues we have encountered.
you have to call a whole bunch of hidden mutexes marked suspend and resume
etc everywhere in the code where you
transition from executing script side code to a blocking FreeSWITCH
function.


Really, the only point in my original comment was that if you want to scale
up something that uses scripting the first way to save
resources is to not leave the script open while you do something you know
will take a long time "playing a 2 hour file, bridging a call, joining a
conference" because the script resources are allocated and doing nothing
this whole time and they all share a global garbage collector.  if you don't
need to remain in the script just transfer the call to a static extension
and close it.  It's just a suggestion really.



On Thu, May 14, 2009 at 4:56 PM, David Knell <d...@3c.co.uk> wrote:

> On Thu, 2009-05-14 at 12:31 -0500, Brian West wrote:
> > Its obvious if you look at the size of the JS VM vs the lua VM.. it
> > would clearly scale better not needing megs and megs of ram per call
> > vs about 160kb for lua.
>
> Isn't this a bit of a non sequitur, given that there ought to be just
> one copy of the JS interpreter in RAM which is shared across all of the
> calls/threads which need to use it?
>
> --Dave
>
>
> _______________________________________________
> Freeswitch-users mailing list
> Freeswitch-users@lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>



-- 
Anthony Minessale II

FreeSWITCH http://www.freeswitch.org/
ClueCon http://www.cluecon.com/

AIM: anthm
MSN:anthony_miness...@hotmail.com <msn%3aanthony_miness...@hotmail.com>
GTALK/JABBER/PAYPAL:anthony.miness...@gmail.com<paypal%3aanthony.miness...@gmail.com>
IRC: irc.freenode.net #freeswitch

FreeSWITCH Developer Conference
sip:8...@conference.freeswitch.org <sip%3a...@conference.freeswitch.org>
iax:gu...@conference.freeswitch.org/888
googletalk:conf+...@conference.freeswitch.org<googletalk%3aconf%2b...@conference.freeswitch.org>
pstn:213-799-1400
_______________________________________________
Freeswitch-users mailing list
Freeswitch-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org

Reply via email to