My understanding of why you don't want to do this is that CALayer backed up by memory, which is not thread safe. This way you can draw a background stream but not render layers or manipulate views.
So what you do is draw a complex presentation logic in the context of the image and transfer the image to the main stream, which will be displayed as an image.
Hope this helps!
source share