Вопросы с тегом «automatic-ref-counting»

Автоматический подсчет ссылок (ARC) - это функция компилятора, которая обеспечивает автоматическое управление памятью объектов Objective-C и Swift.

7
сильный захват себя в этом блоке может привести к циклу сохранения
Как я могу избежать этого предупреждения в xcode. Вот фрагмент кода: [player(AVPlayer object) addPeriodicTimeObserverForInterval:CMTimeMakeWithSeconds(0.1, 100) queue:nil usingBlock:^(CMTime time) { current+=1; if(current==60) { min+=(current/60); current = 0; } [timerDisp(UILabel) setText:[NSString stringWithFormat:@"%02d:%02d",min,current]];///warning occurs in this line }];

6
Как работает новый механизм автоматического подсчета ссылок?
Может кто-нибудь кратко объяснить мне, как работает ARC? Я знаю, что это отличается от Сборки мусора, но мне просто интересно, как именно это работает. Кроме того, если ARC делает то, что делает GC, не снижая производительность, то почему Java использует GC? Почему он не использует ARC?

7
Почему @autoreleasepool все еще нужен для ARC?
По большей части с ARC (Автоматический подсчет ссылок) нам вообще не нужно думать об управлении памятью с объектами Objective-C. Больше не разрешено создавать NSAutoreleasePools, однако есть новый синтаксис: @autoreleasepool { … } Мой вопрос: зачем мне это нужно, когда я не должен вручную выпускать / автоматически выпускать? РЕДАКТИРОВАТЬ: Подводя итог, …

4
Отключить автоматический подсчет ссылок для некоторых файлов
Я скачал iOS 5 SDK и обнаружил, что ARC - отличная особенность нового компилятора Apple. В настоящее время многие сторонние платформы не поддерживают ARC. Могу ли я использовать ARC для моего нового кода и оставить текущий код сохранения / выпуска без изменений? Конвертер ARC здесь не работает, потому что некоторые …



3
ARC и мостовой состав
С АРК, я больше не могу бросить CGColorRefв id. Я узнал, что мне нужно сделать актерский состав. В соответствии с Clang Docs : Приведение с мостом - это приведение в стиле C, снабженное одним из трех ключевых слов: (__bridge T) opпереводит операнд в тип назначения T. Если T это указатель …

7
Исправить предупреждение «Захват [объекта] в этом блоке, вероятно, приведет к циклу сохранения» в коде с поддержкой ARC
В коде с поддержкой ARC, как исправить предупреждение о потенциальном цикле сохранения при использовании блочного API? Предупреждение: Capturing 'request' strongly in this block is likely to lead to a retain cycle созданный этим фрагментом кода: ASIHTTPRequest *request = [[ASIHTTPRequest alloc] initWithURL:... [request setCompletionBlock:^{ NSDictionary *jsonDictionary = [[CJSONDeserializer deserializer] deserialize:request.rawResponseData error:nil]; …

5
Некоторые вопросы об автоматическом подсчете ссылок в iOS5 SDK
В настоящее время я разрабатываю приложение для iPad. Разработка началась для iOS 4.2 и сейчас продолжается (и я думаю, будет завершена) для iOS 4.3. Я только что прочитал об ARC в iOS 5, и в основном я понял, что нам больше не нужно выпускать и сохранять объекты. Мои вопросы: Если …

2
Могу ли я установить для свойств значение nil в dealloc при использовании ARC?
Я пытаюсь изучить автоматический подсчет ссылок в iOS 5. Теперь первая часть этого вопроса должна быть простой: Верно ли, что мне НЕ нужно писать явные операторы свойств выпуска в моем dealloc при использовании ARC? Другими словами, правда ли, что следующее НЕ требует явного освобождения? @interface MyClass : NSObject @property (strong, …

1
Что здесь означает «Тип получателя 'CALayer', например, сообщение является предварительным объявлением»?
Я портирую блок кода из проекта iOS4 на iOS5, и у меня проблемы с ARC. Код создает PDF-файл из снимка экрана. Код создания PDF UIView *captureView; ... NSMutableData *pdfData = [NSMutableData data]; UIGraphicsBeginPDFContextToData(pdfData, captureView.bounds, nil); UIGraphicsBeginPDFPage(); CGContextRef pdfContext = UIGraphicsGetCurrentContext(); [captureView.layer renderInContext:pdfContext]; UIGraphicsEndPDFContext(); Строка renderInContext [captureView.layer renderInContext:pdfContext]; генерирует следующую ошибку. …

3
В каких ситуациях нам нужно написать квалификатор владения __autoreleasing под ARC?
Я пытаюсь решить головоломку. __strongявляется значением по умолчанию для всех сохраняемых указателей объектов Objective-C, таких как NSObject, NSString и т. д. Это сильная ссылка. ARC уравновешивает это с помощью a -releaseв конце области видимости. __unsafe_unretainedравно старому. Он используется для слабого указателя без сохранения сохраняемого объекта. __weakпохоже, __unsafe_unretainedза исключением того, что …

6
Объяснение сильного и слабого хранилища в iOS5
Я новичок в разработке iOS5 и использую objective-c. Мне сложно понять разницу между сильным и слабым хранилищем. Я прочитал документацию и другие вопросы SO, но все они звучат для меня одинаково, без дальнейшего понимания. Я прочитал документацию: Переход на ARC - это ссылки на условия сохранения, назначения и выпуска iOS4; …

6
В ARC или не в ARC? Каковы плюсы и минусы? [закрыто]
Закрыто . Этот вопрос должен быть более конкретным . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он фокусировался только на одной проблеме, отредактировав этот пост . Закрыт 6 лет назад . Уточните этот вопрос Я еще не использовал ARC, поскольку большая часть кода …

3
Достигнуто освобождение UIPopovercontroller, пока всплывающее окно все еще отображается
Уверяю вас, что я искал ответ в SO на свой вопрос, но ни один из них не помог. Вот простой код, который должен UIImagePickerControllerсодержать UIPopoverController: -(void)takePicture:(id)sender{ UIImagePickerController *picker=[[UIImagePickerController alloc] init]; picker.delegate=self; picker.sourceType=UIImagePickerControllerSourceTypeCamera; picker.allowsEditing=YES; UIPopoverController *poc=[[UIPopoverController alloc] initWithContentViewController:picker]; [poc presentPopoverFromBarButtonItem:bbItem permittedArrowDirections:UIPopoverArrowDirectionAny animated:NO]; } Теперь даже с первого раза до меня [UIPopoveController …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.