Служит ли использование(){...} в C# той же цели, что и autoreleasepool { ... } в Cocoa?
Я узнал о using(){}
в C# -->
Использование "using" в C#
Я знаю, что autorelease{}
не то же самое, что using(){}
, потому что cocoa использует ARC, А C# использует GC. -- >
необходимо ли использовать autoreleasepool в программе Swift?
Edit: я нашел сторонний компилятор C#, который, похоже, соединяет эти идеи вместе.
RemObjects C# также имеет поддержка (редко необходимого) ручного объявления пулов автоматического выпуска с помощью синтаксиса using (__autoreleasepool).
Http://www.elementscompiler.com/elements/hydrogene/cocoa.aspx
Служит ли using(){...}
В C# той же цели, что и autoreleasepool{...}
в какао?
1 ответ:
Нет, они разные.
Оператор using C#относится к приобретению и утилизации ресурсов. Обычно это внешний ресурс, такой как файл, где получение открывает файл, а удаление закрывает его.
Пул автоматического освобождения Objective-C предназначен для управления временем жизни объектов в памяти. Объект, помещенный в пул, освобождается, когда пул сливается, для пула по умолчанию это происходит в конце каждой итерации цикла событий.