Consider some CGContextRef,
CGContextRef contextref; // assume its initialised
Now if user does not call CGContextRelease(contextref); and uses CFRelease(contextref);
Will this call CGContextRelease()?
Documentation says “this function is equivalent to CFRelease, except it does not cause an error if contextref is NULL.” We can use them for same purpose but hows that possible. How are they linked? My guess is that internally it should be using typeid to compare and then release. Am I right? If not How does it releases more specific type of memory?
What happens if user does not clear the memory and quits, of force quits? How does a system claim backs the memory?
Thanks
Its a inverse. CGContextRelease() will call CFRelease().