Запитання з тегом «automatic-ref-counting»

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

18
Як я можу відключити ARC для одного файлу в проекті?
Я успішно використовую ARC у своєму проекті. Однак я зіткнувся з кількома файлами (наприклад, в одиничних тестах та макетних об'єктах), де правила ARC зараз трохи крихкі. Я пам’ятаю, чуючи, що існував спосіб відключити ARC на основі файлів, однак я не зміг знайти цю опцію. Чи можливо це? Як відключити ARC …

19
performSelector може спричинити протікання, оскільки його селектор невідомий
Я отримую таке попередження компілятором ARC: "performSelector may cause a leak because its selector is unknown". Ось що я роблю: [_controller performSelector:NSSelectorFromString(@"someMethod")]; Чому я отримую це попередження? Я розумію, що компілятор не може перевірити, чи існує селектор чи ні, але чому це може спричинити витік? І як я можу змінити …

11
Чи повинен IBOutlets бути сильним чи слабким за ARC?
Я розробляю виключно для iOS 5 за допомогою ARC. Якщо IBOutlets до UIViews (і підкласи) має бути strongабо weak? Наступні: @property (nonatomic, weak) IBOutlet UIButton *button; Позбулось би всього цього: - (void)viewDidUnload { // ... self.button = nil; // ... } Чи є проблеми з цим? У шаблонах використовуються strongтакі …

9
Чи завжди ми будемо використовувати [невідоме “у закритті у Swift
У сесії WWDC 2014 403 Intermediate Swift та стенограма з'явився такий слайд Доповідач сказав у такому випадку, якщо ми не використовуємо [unowned self]його, це буде витоком пам'яті. Чи означає це, що ми завжди повинні використовувати [unowned self]всередині закриття? У рядку 64 програми ViewController.swift програми Swift Weather я не використовую [unowned …

8
Ціль-C ARC: сильний проти збереження та слабкий проти присвоєння
Є два нові атрибути управління пам'яттю для властивостей, введених ARC, strongта weak. Крім того copy, що, очевидно, щось зовсім інше, чи є якісь відмінності між strongvs retainі weakvs assign? З мого розуміння, єдина відмінність тут полягає в тому, що weakвін призначить nilпокажчик, але assignне буде, а це означає, що програма …


2
Чому Apple рекомендує використовувати dispatch_once для реалізації єдиного шаблону під ARC?
Яка точна причина використання dispatch_once у спільному примірнику екземпляра сингтона під ARC? + (MyClass *)sharedInstance { // Static local predicate must be initialized to 0 static MyClass *sharedInstance = nil; static dispatch_once_t onceToken = 0; dispatch_once(&onceToken, ^{ sharedInstance = [[MyClass alloc] init]; // Do any other initialisation stuff here }); …

4
Атрибути Objective-C, оголошені @property (неатомічні, копії, сильні, слабкі)
Може хто - небудь пояснити мені докладно , коли я повинен використовувати кожен атрибут: nonatomic, copy, strong, weak, і так далі, для заявленого майна, і пояснити , що кожен робить? Якийсь приклад також був би чудовим. Я використовую ARC.

10
Семантичний випуск: Синтезований геттер власності дотримується конвенції про іменування какао щодо повернення "власних" об'єктів
Наразі я використовую iK 5 SDK для розробки свого додатка. Я намагаюся зробити властивість NSString, а потім синтезувати його у файлі .m (я це робив раніше, без проблем). Тепер я зіткнувся з цим: "Семантичний випуск: синтезований геть властивості слідує конвенції про іменування какао щодо повернення" власних "об'єктів". Це мій код: …

8
Під час перетворення проекту на використання ARC, що означає "корпус перемикання знаходиться в захищеному просторі"?
При перетворенні проекту на використання ARC, що означає "корпус комутації знаходиться в захищеному просторі"? Я перетворюю проект на використання ARC, використовуючи Xcode 4 Edit -> Refactor -> Перетворити в ARC Objective-C ... Однією з помилок, які я отримую, є "випадок перемикання в захищеній області" на "деякі" комутатори в корпус вимикача. …

6
Завжди передавати слабке посилання на себе в блок в ARC?
Я трохи заплутаний у використанні блоку в Objective-C. В даний час я використовую ARC, і в моєму додатку є досить багато блоків, які завжди посилаються на selfзамість його слабкої посилання. Можливо, це є причиною збереження цих блоків selfі запобігання їх розгортанню? Питання в тому, чи слід завжди використовувати weakпосилання selfв …

7
Яка різниця між слабкою посиланням і невідомою посиланням?
Свіфт має: Сильні посилання Слабка література Невідомі посилання Чим невідома посилання відрізняється від слабкої посилання? Коли безпечно використовувати невідому посилання? Чи невідомі посилання є ризиком безпеки, як звисаючі покажчики на C / C ++?

5
Які витоки автоматичного підрахунку посилань у Objective-C не запобігають чи мінімізують?
На платформах Mac та iOS витоки пам’яті часто викликаються невипущеними покажчиками. Традиційно завжди було надзвичайно важливо перевірити свої виплати, копії та зберігання, щоб переконатися, що кожен має відповідне повідомлення про випуск. Ланцюжок інструментів, що постачається з Xcode 4.2, вводить автоматичний підрахунок посилань (ARC) з останньою версією компілятора LLVM , що …

8
Як я можу уникнути захоплення самоврядування в блоки під час впровадження API?
У мене працює додаток, і я працюю над перетворенням його в ARC в Xcode 4.2. Одне із попереджень попередньої перевірки передбачає selfсильне захоплення блоку, що веде до циклу збереження. Я зробив простий зразок коду для ілюстрації проблеми. Я вважаю, що я розумію, що це означає, але я не впевнений у …

1
Спеціальна угода та ARC (Objective-C)
У моєму маленькому додатку iPad у мене є функція "Мова переключення", яка використовує спостерігач. Кожен контролер перегляду реєструється у мого спостерігача під час його проведення viewDidLoad:. - (void)viewDidLoad { [super viewDidLoad]; [observer registerObject:self]; } Коли користувач натискає кнопку "змінити мову", нова мова зберігається у моїй моделі, і спостерігач повідомляється і …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.