2016-03-22 22 views
0

WebsphereサーバーにJavaアプリケーションがデプロイされています。私はサイズ150のアプリケーションでスレッドプールを使用しています。これらとは別に、アプリケーションサーバースレッドが実行されます。それで、いつでもアプリケーションで実行できるスレッドの最大数を判断する方法はありますか?アプリケーションで実行できるスレッドの最大数は?

編集: 私は、スレッド数が固定数を超えないと言う方法がありますか?

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

私のアプリケーションで最大150個のスレッドを作成できますが、アプリケーションサーバーが最大でどれだけ作成するのかを言うことができますか?

おかげ

+0

デフォルトでCPUごとにGCスレッドがあり、コード内でスレッドを開始することができます。期待できる最大の数字は何ですか? –

+3

質問する前にgoogleを使用してください。これは私の最初のGoogleの結果です:http://stackoverflow.com/a/763592/6077352 – PendingValue

+1

[Java VMはいくつのスレッドをサポートできますか?](http://stackoverflow.com/questions/763579/how- many-threads-can-a-java-vm-support) – 3kings

答えて

0

あなたが特定の番号を持っていない、スレッドの数は、JVMのヒープサイズによって制限されます。スレッドのプールには、お使いのコンピュータのコア数の2倍の推奨スレッド数があります。

0

特定の事前定義された番号はありませんが、スレッドプールの場合は最大整数値です。このコードは私のローカルマシン上で動作しようとしているので、スレッドプールの最大値は常にInteger.MAX_VALUE(スレッドプールプールあたり)になります。

int threadCount=Integer.MAX_VALUE; 
ExecutorService executor = Executors.newFixedThreadPool(threadCount); 
関連する問題