1
백그라운드 뷰에서 UIView를 업데이트 할 수 없다는 것을 알고 있습니다.(iphone) 백그라운드 스레드에서 UIView의 데이터 멤버에 액세스하는 것이 안전합니까?
UIView 자손의 사용자 지정 데이터 멤버 변수에만 액세스 할 때 해당 규칙이 적용되는지 확실하지 않습니다.
나는 배경 스레드에서 "번호"변수를 여기
@interface MyView : UIView
{
NSNumber* number;
}
@property (retain) NSNumber* number;
접근 않습니다 있다고 가정 규칙 "배경 스레드에서 어떤 UIView의 업데이트를"위반?
그들이 원자 (기본값)로 표시하는 경우 문제가 발생하지 않아야 백그라운드 스레드에 서브 클래스의 속성에 액세스하면
요청할 때 일부 속성 (즉, UIView의 프레임)이 계산되므로주의해야하지만 문제가 발생할 수 있습니다 (하지만 괜찮을 것입니다). – deanWombourne
view.subviews는 어떨까요? – eugene
addSubview를 호출하지 않고 모든 하위 뷰가 removeFromSuperview를 호출하지 않으면 view.subviews가 정상이 될 수 있습니다. 그러나 나는 그것을 추천하지 않을 것이다. –