Я не знаю об этом. Даже на современном Unix-компьютере java vm будет использовать нативную модель потока. Я немного посмотрел на реализацию Process.setThreadPriority, и да, он устанавливает приоритет собственного потока непосредственно в Linux. Однако кажется, что это почти более гранулярный подход, поскольку Thread.MAX_PRIORITY - Thread.MIN_PRIORITY - это всего лишь расстояние ~ 10. Кажется, что создание потоковой модели, которая чередуется внутри ОС, было бы довольно громоздким и не принесло бы небольшой пользы для встроенного устройства. Я должен думать, что есть нечто большее, чем то, что вы предлагаете.
у меня есть код вроде:
Runnable r = ...;
Thread thread = new Thread(r);
thread.setPriority((Thread.MAX_PRIORITY + Thread.NORM_PRIORITY) / 2);
или же ...
Runnable r = ...
Thread thread = new Thread( new Runnable() {
public void run() {
android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_MORE_FAVORABLE);
r.run();
}
});
ЯВЛЯЕТСЯ способ android.os.Process требуется / предпочтительнее?
ПОЧЕМУ является ли способ android.os.Process предпочтительным / обязательным, если это так?
Насколько я могу судить, это не совсем задокументировано.