I should amend what I said before... HTTP in mozilla is on one thread.  
Callbacks originating from the socket
transport thread are proxied over to the main thread using events.  
Therefore, redirects and pipelining are not
thread safety issues in mozilla.  They would be an issue if HTTP were 
called by multiple threads.

Darin


Darin Fisher wrote:

> I can't comment about nsCategoryManager since that doesn't belong to 
> networking, but what ruslan mentions below is significant.  Currently, 
> HTTP is not thread safe.  That is, it is not safe to make HTTP 
> requests from multiple threads.  This is a serious problem because 
> requests can be triggered from within HTTP (for example, in reaction 
> to a redirect) on the socket transport thread.  This is obviously very 
> bad, and it is a big priority to get this fixed.  Pipelining, for 
> example, should not be enabled until this is fixed, because the 
> pipeline is a "global" object.
> 
> This problem is filed as bug 59434.
> 
> Darin
> 
> 
> Rick Marvin wrote:
> 
>> Even after N6 release, I still receive the assert for the 
>> nsCategoryManager
>> not thread-safe.  Anyone know if this is on the radar to be fixed? 
>> Bugzilla
>> bug# 54639
>> 
>> "Ruslan Belkin" <[EMAIL PROTECTED]> wrote in message
>> news:[EMAIL PROTECTED]...
>> 
>>> Carolyn Truc Tran wrote:
>>> 
>>>> Hi,
>>>> 
>>>> What would be the problem?  HOw can I resolve?
>>> 
>>> 
>>> I does not necesserily represent a problem, it's just a warning hint 
>>> to a
>>> component implementor. When your component doesn't implement
>>> THREADSAFE_ISUPPORTS it will complain when the object is accessed on a
>> 
>> 
>> different
>> 
>>> thread then it has been created on. I'm working on cleaning up http
>> 
>> 
>> handler to
>> 
>>> make it really threadsafe and once that's done - this messages 
>>> should go
>> 
>> 
>> away,
>> 
>>> Ruslan
>>> 
>>> 
> 


Reply via email to