2016-03-22 5 views
0

Ich habe eine Java-Anwendung im Websphere-Server bereitgestellt. Ich benutze den Thread-Pool in meiner Anwendung mit der Größe 150. Abgesehen davon werden Anwendungsserver-Threads ausgeführt. Gibt es eine Möglichkeit, die maximale Anzahl von Threads zu bestimmen, die in der Anwendung jederzeit ausgeführt werden können?Maximale Anzahl von Threads, die in einer Anwendung ausgeführt werden können?

EDIT: Ich meine, gibt es einen Weg, sage ich, dass die Anzahl der Threads zu keiner Zeit eine feste Zahl überschreiten wird?

I am not creating any other thread in the application. 
Using the threadpoolexecutor with size 150 to create any threads. 
+application server threads. 

So wie kann ich meine Bewerbung sagen maximal 150 Threads erstellen kann, kann ich sagen, wie viel ein Anwendungsserver mit der maximalen erstellen?

Dank

+0

Es gibt kein Maximum, z.B. Standardmäßig gibt es einen GC-Thread pro CPU, und Threads können im Code gestartet werden. Fragen Sie, was die größte Zahl ist, die Sie erwarten sollten? –

+3

Bitte benutzen Sie google bevor Sie fragen. Dies ist mein erstes Google-Ergebnis: http://Stackoverflow.com/a/763592/6077352 – PendingValue

+1

Mögliches Duplikat von [Wie viele Threads kann eine Java VM unterstützen?] (Http://stackoverflow.com/questions/763579/how- many-threads-kann-ein-java-vm-support) – 3kings

Antwort

0

Sie keine bestimmte Nummer haben, die Anzahl der Threads wird durch die JVM-Heap-Größe begrenzt. Ein Thread-Pool hat eine empfohlene Anzahl von Threads, die der doppelten Anzahl der Kerne Ihres Computers entspricht.

0

Keine spezifische vordefinierte Zahl, ich denke, aber im Falle von Thread-Pool ist es max Integer-Wert. Versucht dieser Code funktioniert auf meinem lokalen Rechner, so dass incase of max max value wird immer Integer.MAX_VALUE (pro Thread-Pool natürlich).

int threadCount=Integer.MAX_VALUE; 
ExecutorService executor = Executors.newFixedThreadPool(threadCount); 
Verwandte Themen