4
for 루프에서 autorelease 풀을 생성 중입니다 (메소드 A에서). 루프를 반복 할 때마다 다른 메서드 (메서드 B)를 호출합니다. 방법 B는 자동 반복 처리 된 오브젝트를 메소드 A로 리턴합니다. 메소드 A의 for 루프에서 풀을 제거하면 메소드 B에서 보낸 오브젝트가 해제됩니까?(중첩 된) 자동 해제 풀의 범위는 무엇입니까?
감사합니다.
for 루프에서 autorelease 풀을 생성 중입니다 (메소드 A에서). 루프를 반복 할 때마다 다른 메서드 (메서드 B)를 호출합니다. 방법 B는 자동 반복 처리 된 오브젝트를 메소드 A로 리턴합니다. 메소드 A의 for 루프에서 풀을 제거하면 메소드 B에서 보낸 오브젝트가 해제됩니까?(중첩 된) 자동 해제 풀의 범위는 무엇입니까?
감사합니다.
예 - 개체를 -autorelease
에게 보낼 때마다 최상위 수준의 자동 해제 풀에 추가됩니다. 메소드 B에서 새로운 자동 릴리즈 풀을 생성하지 않거나 콜 스택을 더 다운하지 않는 한, 메소드 A의 풀은 최상위 레벨 풀이어야합니다.
유일한 catch는 threads입니다. autorelease 풀 스택은 스레드 당 있습니다. – Chuck