Updates to the UI should be done in the main thread. Have you tried using a call like the following from your background thread:
Code:
[self performSelectorOnMainThread:@selector(doMyResize:) withObject:nil waitUntilDone:false];
That should call the doMyResize method using the main thread... just put your UI updating code in that method and it should work without crashing.