JAVA 线程同步
发布时间:2020-12-15 07:17:19 所属栏目:Java 来源:网络整理
导读:public class MyThread implements Runnable { int i = 0 ; @Override void run() { while ( true ) { synchronized ( this ) { // TODO Auto-generated method stub System.out.println(Thread.currentThread().getName() + " " + i); if (i++ 50 ) { break
public class MyThread implements Runnable { int i = 0; @Override void run() { while (true) { synchronized (this) { // TODO Auto-generated method stub System.out.println(Thread.currentThread().getName() + " " + i); if (i++ > 50) { break; } Thread.yield(); try { Thread.sleep(10); } catch (InterruptedException e) { TODO Auto-generated catch block e.printStackTrace(); } } } } } class Test {
static main(String[] args) {
TODO Auto-generated method stub
MyThread myThread = new MyThread();
Thread thread1 = Thread(myThread);
thread1.setPriority(Thread.MAX_PRIORITY);
thread1.setName("thread1");
thread1.start();
Thread thread2 = Thread(myThread);
thread2.setPriority(Thread.MAX_PRIORITY);
thread2.setName("thread2");
thread2.start();
}
}
运行结果 thread1 0 thread1 1 thread1 2 thread1 3 thread1 4 thread1 5 thread1 6 thread1 7 thread2 8 thread2 9 thread1 10 thread1 11 thread1 12 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |