Is there a way to get Core Animation to start a thread?

Core Animation uses a background thread to do the job. Now the problem is this: I have a heavy calculation going on in the main thread. Core Animation freezes immediately until this calculation is complete. And then he continues to complete the animation. I remember reading in a document that CA has a low priority during processing, which means that no matter what the main thread wants to do, it is high-prio and will be more likely than any fancy animation at the same time.

I want to get Core Animation to plan its background thread nicely with the main thread under no circumstances. Or, alternatively, a separate thread that will perform heavy calculations outside the main thread. I already tried this, but the CA still hangs until it ends. I expect the scheduler to quickly switch processing time between the CA and this calculation.

How can I get CA to work further? If everything goes a little slower than that is fine. But most importantly, all things continue to go from the point of view of users.

+5
source share
3 answers

, . .

, iPhone - , , , . , NSOperations NSOperationQueue. , , NSOperation , , .

Core Animation , , , . -animationDidStart: delegate CAAnimation, . , , , .

+5

[CATransaction flush] , runloop

+7

, [NSThread setThreadPriority:1.0], CA .

-1

All Articles