Jan Dubois wrote:
On Mon, 29 Nov 2004, Stas Bekman wrote:

Jan, do you have any idea why the CLONE trick doesn't work? CLONE is
running inside the newly-clonned perl, so thread-safety shouldn't get
on the way, no?


Is CLONE running inside the new *thread* ? It is not good enough to run
it in the correct Perl interpreter; you must call CoInitialize() inside
the thread that is going to make COM/OLE calls. Otherwise COM will not
operate from that thread. It needs to associate the *thread* with a
specific apartment for synchronization purposes first.

Sorry, that is the only thing I can think of right now. I can't remember
how CLONE is being called exactly.

If you just call perl_clone it runs in the new perl context, but inside the same thread. At least on Unix. Under ithreads.pm it probably starts a new thread first (but I'm not sure). Under modperl 2, there is no 1:1 relationship between interpreters and apache threads


so that means that it's out of question that Win32::OLE can be used at all, right? I suppose Thierry was just lucky to get the thing working by loading at request time, and most likely under a bit of stress testing it'll show the same problems.

--
__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com

--
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html



Reply via email to