On Tuesday 08 July 2003 22:36, you wrote: > So, if shared channels are a "hack", that is not thread-safe, and maybe > create crashes, what is the future of the "ns_chan" command ? >
If nobody objects, the ns_chan will be rewritten to look like: ns_chan (create, get, put, list, cleanup) as Jim suggested. Channels are *not* going to be shared but instead tossed between interp/threads. Each thread which does a "get" will gain the ownership of the channel until it releases it with "put". Channels are going to be parked in virtual-server-wide table filled in initialy with "create" subcommand. Channles in the parked table can be listed with "list" and the entire table can be cleaned up with "clean". That's a short summary of the discussion we had here. The "share" behaviour, that is, one underlying OS file handle (or socket) shared between two distinct channels from two separate threads is thus *not* possible. This requires some more work and is not that straightforward (if at all) as it appears on the first glance. Therefore, be very careful what you're doing if you'd like to implement this behaviour yourself. > If "ns_chan" will be part of the AS4.0 release, we can warn developers this > is an "experimental" command. Not necessarily, if implemented as stated above. > > So 2 solutions : > > 1/ Keep AS4.0 secure and stable : drop ns_chan command, and allow > developpers who need it to use a module "at their own risk". > 2/ put "ns_chan" into the AS4.0 release and remind developers that this > feature may crash the server... > > What's the AOLserver core team opinion on this subject ? Mine you already have. Depends on what other would say. SInce we have no formal procedures (yet) on how to accept or reject proposals, I'd say (based on the experience) that if nobody objects explicitly, the thing is going to happen. Provided, of course, that somebody will step out and make the actual implementation. In this case, I'll volunteer for this since I've done a similar thing for the Tcl threading extension already. Cheers, Zoran -- AOLserver - http://www.aolserver.com/ To Remove yourself from this list, simply send an email to <[EMAIL PROTECTED]> with the body of "SIGNOFF AOLSERVER" in the email message. You can leave the Subject: field of your email blank.