The Java Program: Priority.java
1
2
3 class Priority implements Runnable {
4 private final Thread t = new Thread (this);
5 private final int maxcount;
6
7 Priority (final int p, final int c) {
8 maxcount = c;
9 t.setPriority (p);
10 t.setName ("A thread at priority " + p + " and count " + c);
11 t.start();
12 }
13
14 public void run() {
15
16 System.out.println ("BEGIN! " + t.getName());
17 for (int i = 1; i <= maxcount; i++) {
18 System.out.println (i + ". " + t.getName());
19 }
20 System.out.println ("DONE! " + t.getName());
21 }
22
23 public static void main (String args[]) {
24 final int p = Thread.currentThread().getPriority();
25 System.out.println ("Begining main (priority=" + p + ")");
26 final Priority [] handle = new Priority [args.length/2];
27 for (int i=0; i<args.length; i+=2) {
28 final int y = Integer.parseInt (args[i]);
29 final int c = Integer.parseInt (args[i+1]);
30 handle[i/2] = new Priority (y, c);
31 }
32 System.out.println ("The end of main.");
33 }
34 }