문제

에 따르면 또 다른 스택 오버 플로우 게시물 그만큼 drain 메시지는 Apple 전용 호출입니다.

NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSLog (@"Hello");
[pool drain];
return 0;

교체하는 것이 안전합니까? drain ~와 함께 release? Linux (현재 Ubuntu)에서 실행되도록 Objective-C 응용 프로그램을 포트하려고합니다. 시작하기 전에 포기해야합니까? (나는 이미 얻는 데 문제가 있습니다 NSURLConnection 일하고 있는)

도움이 되었습니까?

해결책

애플의 문서에서 drain:

...]이 메소드는 릴리스와 동일하게 작동합니다. [...

따라서 자동 공급 풀을 배수한다는 것은 필연적으로 거래하는 것을 의미합니다. 제 생각에는 애플이 더 이상 사용되지 않아야합니다 drain 그것은 단지 혼란을 야기하기 때문입니다.

하지만:

특별 고려 사항 :
쓰레기 수집 환경에서 release수집가에게 힌트를주고 싶지 않다면 사용하는 것이 중요합니다. drain 쓰레기 수집 된 환경에 대해 편집 할 수있는 모든 코드에서.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top