0
나는 액션 Y를하는 모든 클라이언트 Ai (A1, ..., An)를 가지고있다. 그리고 액션 Y를하는 서버 B도있다. 그러나 아무도 X를 실행하지 않는 경우에만 Y가 수행 될 수있다.동기화 된 블록 : 많은 개체 잠금?
그래서 뮤텍스 잠금 장치를 생각합니다. 모든 클라이언트에는 자체 잠금 장치 Li가 있습니다. 그것은 고객에 대한 아무 문제 없지만,이 같은 서버 B, 뭔가 무서운 것 : 이런 종류의 문제에 대한 더 나은 솔루션
synchronized(L1){
synchronized(L2){
...
}
}
있습니까?
세마포어 또는 원자 카운터를 사용하여 크로스 서버 작업에 사용합니다. – Antoniossss
세마포어를 사용하는 경우 클라이언트 수로 불확실한 허가 번호를 정확하게 입력해야합니다. – Silver
@Silver 사실이 아닙니다. 당신은 1000 개의 허가를 가진'Semaphore'를 생성 할 수 있고 B는 항상 모든 1000을 획득하려고합니다. 어떤 클라이언트가 체크 아웃했다면 기다려야합니다. – Kayaman