My app crashes when my ViewController gets deallocated while my CATiledLayer is retrieving the image to draw in a background thread. I get a message
-[MyViewController respondsToSelector:]: message sent to deallocated instance 0x8f58e00
and the debugger shows
0 ___forwarding___
1 __forwarding_prep_0__
2 -[CATiledLayer(CATiledLayerPrivate) canDrawRect:levelOfDetail:]
3 tiled_layer_render
4 CAImageProviderThread
5 CAImageProviderBackgroundThread
6 CA::DispatchGroup::thread
7 thread_fun
8 _pthread_start
Now, I do want to release that certain instance of MyViewController because I don't need it anymore. But how do I stop it from crashing when it returns from the background thread?