Hi everybody!

So, I have a rather small thing that will be an issue someday. In the
CGI loader I have written, I push the relevant enviroment variables
using the Env singleton PMC. Which redirects to Parrot_setenv, which
eventually call the operating system setenv / putenv.

However, any one apache instance may have many threads at the same
time. As far as I can renember, enviroment variables are
process-global, thus one thread may overwrite the enviroment of
another. Which will eventually lead to failure.

Thus my proposed solution is to put in the place of the Env singleton
PMC any other hash that is local to the interpreter. (I currently have
request-local and will have thread-local interpreters). Or even
dynamically scoped, how awesome would that be, any single interpreter
could then run multiple scripts as asynchronous tasks. Anyway, I don't
believe there is currently a method to achieve what I'm proposing, so
this might mean we would have to make some changes. Obviously, I'm
quite prepared to make a patch, if adviced on how to do this.

Kind regards,
Bart Wiegmans
_______________________________________________
http://lists.parrot.org/mailman/listinfo/parrot-dev

Reply via email to