java濡備綍瀹氫箟鍏变韩鍙橀噺
鍦↗ava涓紝鍙互浣跨敤浠ヤ笅鍑犵鏂瑰紡鏉ュ畾涔夊叡浜彉閲忥細
- 浣跨敤闈欐€佸彉閲忥細浣跨敤
static
鍏抽敭瀛楀畾涔変竴涓潤鎬佸彉閲忥紝璇ュ彉閲忓皢琚墍鏈夊疄渚嬪璞″叡浜€傞潤鎬佸彉閲忓彲浠ュ湪绫荤殑浠讳綍鏂规硶鍐呴儴浣跨敤锛屽苟涓斿彲浠ラ€氳繃绫诲悕鐩存帴璁块棶銆?/li>
public class SharedVariable {
public static int count; // 闈欐€佸彉閲?/span>
public void increment() {
count++;
}
}
- 浣跨敤瀹炰緥鍙橀噺锛氬湪绫讳腑瀹氫箟涓€涓疄渚嬪彉閲忥紝璇ュ彉閲忓皢琚墍鏈夊疄渚嬪璞″叡浜€傚疄渚嬪彉閲忓彲浠ュ湪绫荤殑浠讳綍鏂规硶鍐呴儴浣跨敤锛屼絾鏄渶瑕侀€氳繃瀹炰緥瀵硅薄鏉ヨ闂€?/li>
public class SharedVariable {
public int count; // 瀹炰緥鍙橀噺
public void increment() {
count++;
}
}
- 浣跨敤鍏变韩瀵硅薄锛氬垱寤轰竴涓叡浜璞★紝鐒跺悗灏嗚瀵硅薄浼犻€掔粰闇€瑕佸叡浜殑绾跨▼鎴栨柟娉曚腑銆傚涓嚎绋嬫垨鏂规硶鍙互閫氳繃璇ュ叡浜璞℃潵璁块棶鍏变韩鏁版嵁銆?/li>
public class SharedVariable {
public static void main(String[] args) {
SharedObject sharedObject = new SharedObject(); // 鍏变韩瀵硅薄
Thread thread1 = new Thread(() -> {
sharedObject.increment();
});
Thread thread2 = new Thread(() -> {
sharedObject.increment();
});
thread1.start();
thread2.start();
}
}
class SharedObject {
private int count;
public synchronized void increment() {
count++;
}
}
浠ヤ笂鏄嚑绉嶅父瑙佺殑瀹氫箟鍏变韩鍙橀噺鐨勬柟寮忥紝鍏蜂綋浣跨敤鍝鏂瑰紡鍙栧喅浜庡叿浣撶殑闇€姹傚拰鍦烘櫙銆?/p>