DMDScript - Walter : 2 questions about your JavaScript engine
- adzheng (12/12) Nov 04 2005 I've been using your JS engine for a while and have couple questions. Ca...
- Walter Bright (13/23) Nov 05 2005 you
I've been using your JS engine for a while and have couple questions. Can you please give me some hints? 1. I've a C++ object derived from Dobject exposed to JS. When the program ends, I've tried to use mem.fullcollect() and the object seems to be deleted but the destructor doesn't get called. Therefore a memory leak occors if I need to free some momory in the destructor. 2. I've loaded JS engine in thread A and tried to call a JS function from thread B it seems like the engine doesn't like it since the thread context is different. Is there a way to switch JS calling thread context then make the call across thread successfully? Thanks in advance, adzheng
Nov 04 2005
"adzheng" <adzheng_member pathlink.com> wrote in message news:dkgro6$3g5$1 digitaldaemon.com...I've been using your JS engine for a while and have couple questions. Canyouplease give me some hints? 1. I've a C++ object derived from Dobject exposed to JS. When the programends,I've tried to use mem.fullcollect() and the object seems to be deleted butthedestructor doesn't get called. Therefore a memory leak occors if I need tofreesome momory in the destructor.You can use GC::setFinalizer to run some custom code when the object is free'd by the GC.2. I've loaded JS engine in thread A and tried to call a JS function fromthreadB it seems like the engine doesn't like it since the thread context is different. Is there a way to switch JS calling thread context then makethe callacross thread successfully?The engine is designed around the 'apartment thread' model, where the engine thread contexts are all distinct from each other. Be careful crossing thread boundaries, as the GC instances don't scan or know about each other.
Nov 05 2005