At 10:41 AM 1/24/2002 +0100, you wrote:
>// >das webservice arbeitet multithreaded, d.h. es kann daher schon mal
>// >vorkommen, da� um die 1000 threads offen sind.
>//
>// und race conditions und sowas kann Dir nicht passiert sein?
>
>erkl�r bitte..  ;)
>ich mach eine reihe von neuen worker-threads auf, die die scans der
>unterschiedlichen ports starten. und joine dann bis alle fertig sind.

Du kannst Dir bei sowas bestimmte Probleme einhandeln: (a) resource 
contention, (b) race conditions, (c) deadlocks (nicht zu verwechseln mit 
dreadlocks </g>). Hat alles mit multi-threading zu tun.

Als Optimierung f�r Deine Anwendung: mach' einen Pool von Threads, die 
wiederverwendet werden. Das macht IIS so, ASP so, etc. Die Aufgaben werden 
auf die Threads aufgeteilt, dann wieder eingesammelt. Gibt es nicht genug 
Threads, werden bis zu einem Limit neue erzeugt, weitere Requests kommen in 
Queue (rate mal woher die Fehlermeldung bei ASP kommt, die mit Request 
Queue is full). Damit verhindert man, da� der Server �berlastet wird - weil 
zu viele Threads sind absolut kontraproduktiv punkto Performance.

Chris


| [aspdedotnet] als [email protected] subscribed
| http://www.dotnetgerman.com/archiv/aspdedotnet/ = Listenarchiv
| Sie k�nnen sich unter folgender URL an- und abmelden:
| http://www.dotnetgerman.com/listen/aspDEdotnet.asp

Antwort per Email an