У меня есть приложение macruby
, которое пропускает гигабайт памяти. Ruby предназначен для логики и доступа к некоторым моим классам Objective-C, для доступа к таким функциям, как Accessibility-API, создания скриншотов и обработки их через CIImage.
Имеет код ruby и Objective-C, который обрабатывает память?
Насколько я знаю, ruby собирает мусор автоматически, но для Obj.-C я должен использовать немного NSAutoreleasePool
. Но где я должен release
бассейн? Мой код ruby должен обрабатывать возвращаемые значения.
В настройках моего проекта включена сборка мусора (-fobjc-gc-only
).
Вот код:
+ (CGSize) getSizeAttribute: (AXUIElementRef)element attribute:(CFStringRef) attribute {
AXValueRef temp;
CGSize point;
AXError resultCode;
resultCode = AXUIElementCopyAttributeValue( element, attribute, (CFTypeRef *)&temp );
AXValueGetValue(temp, kAXValueCGSizeType, &point);
return point;
}