Нужно ли освобождать контекст, возвращенный из UIGraphicsGetCurrentContext ()? - PullRequest
23 голосов
/ 16 сентября 2010

Я использую CGContextRef.

UIGraphicsBeginImageContext(self.drawImage.frame.size);
CGContextRef context=UIGraphicsGetCurrentContext();
CGContextSetRGBStrokeColor(context,0.0f,0.0f,0.0f,1.0f);
UIGraphicsEndImageContext();
CGContextRelease(context);

Нужно ли мне звонить CGContextRelease(Context); в приведенном выше.

1 Ответ

27 голосов
/ 16 сентября 2010

Нет.

См. Правило создания по сравнению с правилом получения :

Правило создания

Основные функции Foundation имеют именакоторые указывают, когда вы являетесь владельцем возвращенного объекта:

Функции создания объекта, в которые встроено «Создать»;Функции дублирования объектов, для которых встроено «Копирование» в имени.

[...]

Правило Get

Если вы получаете объект из какой-либо базовой функции Coreкроме функции создания или копирования - такой как функция Get - вы не являетесь ее владельцем [...]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...