標籤:pre ext 安全 ted zed main tac nbsp div
安全執行緒:
安全執行緒的方法一定是排隊啟動並執行。
public class SyncObject { synchronized public void methodA() { try { System.out.println("begin methodA threadName = " + Thread.currentThread().getName()); Thread.sleep(5000); System.out.println("end"); } catch (InterruptedException e) { e.printStackTrace(); } }}public class SyncThreadA extends Thread{ private SyncObject object; public SyncThreadA(SyncObject object) { this.object = object; } @Override public void run() { super.run(); object.methodA(); }}public class SyncThreadB extends Thread{ private SyncObject object; public SyncThreadB(SyncObject object) { this.object = object; } @Override public void run() { super.run(); object.methodA(); }}public class ThreadRunMain { public static void main(String[] args) { testSyncThread(); } public static void testSyncThread(){ SyncObject object = new SyncObject(); SyncThreadA a = new SyncThreadA(object); a.setName("A"); SyncThreadB b = new SyncThreadB(object); b.setName("B"); a.start(); b.start(); }}
運行結果:
如果去掉synchronized,運行結果:
Java 學習筆記之 安全執行緒