On 12/16/06, Zoran Vasiljevic <[EMAIL PROTECTED]> wrote:
Are you sure? AFAIK, we just go down to Tcl_Alloc in Tcl library. The allocator there will not allow you that. There were some discussions on comp.lang.tcl about it (Jeff Hobbs knows better). As they (Tcl) just "inherited" what aolserver had at that time (I believe V4.0) the same what applies to AS applies to Tcl and indirectly to us.
Yeah, pretty sure. You can only use Tcl objects within a single interp, which is restricted to a single thread, but general ns_malloc'd memory chunks can be passed around between threads. It would suck pretty hard if that wasn't the case. We have a bunch of reference counted stuff, cache values for example, which we share among threads and delete when the reference count drops to zero. You can ns_register_proc from any thread, which needs to ns_free the old value... Here's the (a?) problem: http://www.bozemanpass.com/info/linux/malloc/Linux_Heap_Contention.html