import java.util.Arrays;//1.创建三个线程,分别设置它们不同的优先级,然后比较他们的优先级大小关系。
public class ThreadThree {
public static void main(String[] args) {
IntPrint p1 = new IntPrint(1);
IntPrint p2 = new IntPrint(-1);
IntPrint p3 = new IntPrint(0);
p1.start();
p2.start();
p3.start();
p1.setPriority(1);
p2.setPriority(5);
p3.setPriority(10);
}
}class IntPrint extends Thread {
private int a; public IntPrint(int a) {
this.a = a;
} public void run() {
if (a > 0) {
System.out.println("n_n111111");
} else if (a == 0) {
System.out.println("@.@333333");
} else if (a < 0) {
System.out.println("·3*222222");
}
}
}这里的问题是 输出根本不按照我设定的优先级 执行run 有时候运行多次 会出现混乱 这是什么问题 如何解决?
public class ThreadThree {
public static void main(String[] args) {
IntPrint p1 = new IntPrint(1);
IntPrint p2 = new IntPrint(-1);
IntPrint p3 = new IntPrint(0);
p1.start();
p2.start();
p3.start();
p1.setPriority(1);
p2.setPriority(5);
p3.setPriority(10);
}
}class IntPrint extends Thread {
private int a; public IntPrint(int a) {
this.a = a;
} public void run() {
if (a > 0) {
System.out.println("n_n111111");
} else if (a == 0) {
System.out.println("@.@333333");
} else if (a < 0) {
System.out.println("·3*222222");
}
}
}这里的问题是 输出根本不按照我设定的优先级 执行run 有时候运行多次 会出现混乱 这是什么问题 如何解决?
双核经常会出现一些异常情况~~再不行
你不要让IntPrint类继承Thread
而是实现Runnable接口
然后要注意你的cpu是不是双核 ----是双核的 难道就是因为这个……
双核经常会出现一些异常情况~~再不行
你不要让IntPrint类继承Thread --- 我用Runnable 接口试验过了 不行 难道只是因为双核问题嘛……
而是实现Runnable接口