public class MainActivity extends Activity {
private int newThreadCount;
private int uiCount;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Thread t = new Thread() {
@Override
public void run() {
//Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND);
while (true) {
newThreadCount++;
}
}
};
t.start();
while (uiCount < 100000000) {
uiCount++;
}
Log.d("TEST", "uiCount=" + uiCount + " newThreadCount=" + newThreadCount);
}
私が知っている Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND)bg_non_interactiveのcgroupAndroidのスレッドProcess.setThreadPriority
- 実行上記のコードで
LETスレッドTの実行、ログ印刷uiCount = 100000000およびnewThreadCount = 50000000(around)
- Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND)を削除してから コードを再度実行してください。ログの印刷はほぼ同じです。
したがって、Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND)の機能は何ですか?
正確に何を求めていますか?あなたの質問の文書化答えはどうですか? – JoxTraex
Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND)またはProcess.setThreadPriority(Process.THREAD_PRIORITY_FORCEGROUND)のスレッドがCPUの時間を占有しますか? – iceGeneral
あなたのメインポストに更なるアップデートをアップデートしてください。コメントにそれらを残さないでください。 – JoxTraex