[면접] 한 라인이 한 대상의synchronized 방법에 들어가면 다른 라인이 이 대상에 들어갈 수 있는 다른 방법이 있습니까?
2286 단어 synchronized
public class ThreadTest {
int i = 0;
int j = 0;
public static void main(String[] args) {
final ThreadTest threadTest = new ThreadTest();
new Thread() {
public void run() {
threadTest.printI();
}
}.start();
new Thread() {
public void run() {
threadTest.printJ();
}
}.start();
}
public synchronized void printI() {
while (i < 100)
System.out.println("i==" + i++);
}
public void printJ() {
while (j < 10)
System.out.println("j==" + j++);
}
}
실행 결과:
C:\Program Files\Notepad++>java -cp "D:\shanshan\java" "ThreadTest"
i==0
i==1
j==0
i==2
j==1
i==3
j==2
i==4
j==3
i==5
j==4
i==6
j==5
i==7
j==6
i==8
j==7
i==9
j==8
i==10
j==9
i==11
i==12
i==13
i==14
i==15
i==16
i==17
i==18
i==19
i==20
i==21
i==22
i==23
i==24
i==25
i==26
i==27
i==28
i==29
i==30
i==31
i==32
i==33
i==34
i==35
i==36
i==37
i==38
i==39
i==40
i==41
i==42
i==43
i==44
i==45
i==46
i==47
i==48
i==49
i==50
i==51
i==52
i==53
i==54
i==55
i==56
i==57
i==58
i==59
i==60
i==61
i==62
i==63
i==64
i==65
i==66
i==67
i==68
i==69
i==70
i==71
i==72
i==73
i==74
i==75
i==76
i==77
i==78
i==79
i==80
i==81
i==82
i==83
i==84
i==85
i==86
i==87
i==88
i==89
i==90
i==91
i==92
i==93
i==94
i==95
i==96
i==97
i==98
i==99
C:\Program Files\Notepad++>pause
. . .
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
javasynchronized 동기화 정적 방법과 동기화 비정적 방법의 공통점우리는synchronized를 사용하여 대상 변수를 동기화할 수 있을 뿐만 아니라,synchronizedl를 통해 동기화 클래스의 정적 방법과 비정적 방법을 동기화할 수 있습니다. 자바 관련 문법에서 알 수 있듯이s...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.