Einzelnen Beitrag anzeigen

fisherman_b

Registriert seit: 4. Mär 2005
Ort: Aachen
21 Beiträge
 
RAD-Studio 2009 Arc
 
#1

wieviele TIdThreads mit TIdTCPServer möglich?

  Alt 7. Mär 2005, 11:05
Hallo,

leider habe ich bei meiner Suche in den Forum keine passende Antwort finden können, daher frage ich hier mal ganz explizit.
Ich experimentiere zur Zeit mit einem auf den Indy Komponenten basierenden Server (Version 9, Delphi 7 Enterprise, Windows XP).
Ich habe hierfür einen Client gemacht, der eine beliebige Anzahl von User-Zugriffen simuliert, um z.B. mein Protokoll testen zu können. Dabei ist mir eher zufällig aufgefallen, dass der TIdTCPServer bei ca. 2150 Connections mit Fehlermeldungen dichtmacht (Kein Speicher verfügbar), es sind dann keine weiteren Connections möglich. Das leuchtet mir nicht ganz ein: die Threads (TidPeerThread), die bei jedem Connect erzeugt werden, belegen garde mal ca. 15 KB pro Client. Wie muss denn der fehlende Speicher zur Verfügung gestellt werden ? Die Server-Applikation inkl. ca. 2000 Threads benötigt beispielsweise etwa 34 MB Speicher.
Ich habe, um auszuschliessen, dass es an meinen Threads liegt, das Gleiche mit den Indy Demos getestet (Chat, Basic Server). Das Resultat ist das Gleiche, unabhängig davon ob man einen TIdThreadMgrDefault oder einen TIdThreadMgrPool verwendet.
Gibt es eine Beschränkung bei den Indy Komponenten, was die Anzahl der Threads angeht ? Oder ist das bereits eine Beschränkung des Betriebssystems (also ca. 2500) ?

Gruss,

Bernhard
  Mit Zitat antworten Zitat