2011-06-19 46 views
1

這是一個關於測試的問題,我弄錯了,我被setPriority(Thread.MIN_Priority)和setPriority(1)的不同所困惑。問:假設你的多線程程序有一個後臺線程(稱爲batchThread),它執行了一些冗長的處理,當batchThread運行時,設置其優先級以允許系統的其他部分非常敏感的正確方法是什麼?如何正確使用setPriority()方法?

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只是一個提示,取決於操作系統以及您是否是root用戶或管理員。通常不值得一玩,因爲操作系統可以確定一個線程是IO綁定還是CPU綁定,並據此採取相應措施。 –

回答