Java 单个线程的优先级

Java 单个线程的优先级,java,android,android-studio,Java,Android,Android Studio,我已经创建了三个独立的线程来执行相同的任务,在for循环中显示控制台铭文。 我通过构造给每个线程一个不同的优先级(MIN、MED、MAX) 此外,我还添加了停止所有线程的功能 final CyclicBarrier gate = new CyclicBarrier(4); 同时运行所有线程 gate.await(); } catch (BrokenBarrierException e) { e.printStackTrace(); } catch (InterruptedException

我已经创建了三个独立的线程来执行相同的任务,在for循环中显示控制台铭文。 我通过构造给每个线程一个不同的优先级(MIN、MED、MAX)

此外,我还添加了停止所有线程的功能

final CyclicBarrier gate = new CyclicBarrier(4);
同时运行所有线程

 gate.await();
} catch (BrokenBarrierException e) {
 e.printStackTrace();
} catch (InterruptedException e) {
 e.printStackTrace();
最后,我开始了所有的线程

thread2.run();
thread1.run();
thread3.run();

 try {
gate.await();
} catch (BrokenBarrierException e) {
 e.printStackTrace();
} catch (InterruptedException e) {
 e.printStackTrace();
}
System.out.println("DONE");
设置优先级不会产生预期效果,因为线程是按照上面“启动”的顺序执行的 我请求帮助,因为我不知道为什么优先级设置不起作用。
在android 4.4上运行的应用程序线程2和3的优先级是什么?线程1:最小优先级线程2:正常优先级线程3:最大优先级?它们的运行顺序是什么?预计为:1-2-3,与上述相同。第一个t2->t1->t3预期为3->2->1
thread2.run();
thread1.run();
thread3.run();

 try {
gate.await();
} catch (BrokenBarrierException e) {
 e.printStackTrace();
} catch (InterruptedException e) {
 e.printStackTrace();
}
System.out.println("DONE");