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
