Allow to do a quick explanation of what we're doign and what we're
running into before i ask for specific help if i may :)

My company is writing a couple of custom apps that use parts of mozilla
internally - spcifically, wrpapping our object sup in xpcom, and
using the netlib to retrieve uri's and feed back the content of such.

It's very possible that there's a very large amount of doucments to
be downloaded - latest testing has been with both 6500 and 14500
documents
at once (ok, not simultaneously, but in the one execution).

The way we have it setup is that for each uri to be processed, a new
nsIStreamListener is created to handle the onstart, onstop, and
ondataavailable,
but these are created in their own threadspace with their own event
queue.

We use a threadPool to control how many downloads are going at once,
normally set to 15 max and 5 min threads.

The program was crashing, so we wrote a test program that does _jsut_
those
things i've described and nothing else.  The test program can handle
6 and half thousand documents (we're testing with local files, using
file:/ type uri's) without a problem, but when we increased it to
14 thousand, the thing crashes.

We're running on Linux, so thread debugging is just not on.  And we've
tried this against, mozilla releases M18, 0.8, and 0.8.1 all with the
same results.

I'm really really hoping that it's jsut that we are using netlib in
wrong
way...

anyway, i've attached the code for the test program, in the hope
that people that _do_ know exactly what they are doing can take a look
at it and tell me what i'm doing wrong.  It'd get me out of a hell of
a bind, and i'd love them forever :)

Anyway, if someone could take a look, please do :)

--Geoff


-- 
                            (    )
Geoff Appleby                ----           [EMAIL PROTECTED]
Internet Engineer           (0  0)         Ph: +61 2 6257 7111
http://www.topic.com.au      (..)         Fax: +61 2 6257 7311
                    Keeper of the Butt-Monkey

MozSyncIOTest.cpp

StreamListener.cpp

StreamListener.h

Reply via email to