0
스레드 안전 클래스를 만들 때 "위임"이라는 개념을 사용하지는 않습니다. 무슨 뜻이에요? 그리고이 전략은 thread-safe 클래스를 효과적으로 만드는 방법은 무엇입니까? 언제 실패 할 수 있습니까? 누군가 예를 들어 주시겠습니까?"위임"은 스레드로부터 안전한 클래스를 어떻게 지원합니까?
스레드 안전 클래스를 만들 때 "위임"이라는 개념을 사용하지는 않습니다. 무슨 뜻이에요? 그리고이 전략은 thread-safe 클래스를 효과적으로 만드는 방법은 무엇입니까? 언제 실패 할 수 있습니까? 누군가 예를 들어 주시겠습니까?"위임"은 스레드로부터 안전한 클래스를 어떻게 지원합니까?
클래스 위임과 관련하여 "위임"이란 클래스가 스레드 안전성 작업을 오프로드하는 다른 클래스 개체의 참조를 클래스에 포함한다는 의미입니다. 여기에 Delegator
클래스가 구성 요소 counter
에 스레드 안전을 위임
class Delegator {
private final AtomicInteger counter = new AtomicInteger(0);
public int getNextCounter(){
return counter.incrementAndGet();
}
}
, 고려하십시오. 분명히 클래스는 counter
작업 자체의 고통을 감수 할 수 있었지만 휠을 재발 명하게되었습니다.
위임을 신중하게 사용해야합니다. 여러 변수를 포함하는 상태 연산이있는 경우 이러한 각 변수 연산이 개별적으로 스레드 안전성이면 충분하지 않지만 함께 상태 전이도 스레드 안전성이어야합니다.