2011-06-19 3 views
1

ここでは、私が間違っているテストでの質問ですが、私はsetPriority(Thread.MIN_Priority)とsetPriority(1)がどのように異なるのか混乱しています。setPriority()メソッドを正しく使用するにはどうすればよいですか?

Q:バッチスレッドを実行している間、システムの残りの部分が非常に応答しやすいように、優先順位を設定する適切な方法は何か、長いスレッド処理(batchThreadと呼ばれる)を持つマルチスレッドプログラムがあるとします。

a)batchThead.setPriority(1);

b)batchThead.setPriority(Thread.MAX_PRIORITY);

c)batchThead.setPriority(Thread.MIN_PRIORITY);

d)batchThead.setPriority(Thread.MID_PRIORITY);

私はCを選択して間違っていました。いつものように助けてくれてありがとう。

+0

これは信じがたいです。 – mre

+0

私は知っている!私は正しいと思った!すぐに私のインストラクターにメールを送るつもりです。 –

+1

setPriorityはOSに依存し、root/administratorであるかどうかのヒントにすぎません。 OSがスレッドがIOバウンドかCPUバウンドかを判定し、それに応じてアクションをとることができるので、一般的には価値がありません。 –

答えて

3

私は彼らが同じであると信じています。 Javaのドキュメントによると、Thread.MIN_PRIORITYは1:http://download.oracle.com/javase/1.4.2/docs/api/constant-values.html#java.lang.Thread.MAX_PRIORITY

あなたのインストラクターは間違っていたのでしょうか?

+1

または彼のインストラクターはばかですか? :) – mre

+1

おそらく、私はこのテストが彼らが何をやっているのか分からないインドの企業goombasによって作られたと思います。これは、Javaコースを開始する前に当社から私たちに与えられた事前テストの一部でした。 –

関連する問題