SetPriority.java
上传用户:songled
上传日期:2022-07-14
资源大小:94k
文件大小:1k
源码类别:

进程与线程

开发平台:

Java

  1. public class SetPriority extends Object {
  2. private static Runnable makeRunnable() {
  3. Runnable r =  new Runnable() {
  4. public void run() {
  5. for ( int i = 0; i < 5; i++ ) {
  6. Thread t = Thread.currentThread();
  7. System.out.println(
  8. "in run() - priority=" + 
  9. t.getPriority() +
  10. ", name=" + t.getName());
  11. try {
  12. Thread.sleep(2000);
  13. } catch ( InterruptedException x ) {
  14. // ignore
  15. }
  16. }
  17. }
  18. };
  19. return r;
  20. }
  21. public static void main(String[] args) {
  22. Thread threadA = new Thread(makeRunnable(), "threadA");
  23. threadA.setPriority(8);
  24. threadA.start();
  25. Thread threadB = new Thread(makeRunnable(), "threadB");
  26. threadB.setPriority(2);
  27. threadB.start();
  28. Runnable r = new Runnable() {
  29. public void run() {
  30. Thread threadC = 
  31. new Thread(makeRunnable(), "threadC");
  32. threadC.start();
  33. }
  34. };
  35. Thread threadD = new Thread(r, "threadD");
  36. threadD.setPriority(7);
  37. threadD.start();
  38. try { Thread.sleep(3000); } 
  39. catch ( InterruptedException x ) { }
  40. threadA.setPriority(3);
  41. System.out.println("in main() - threadA.getPriority()=" +
  42. threadA.getPriority());
  43. }
  44. }