Main aspect of the question: It\'s about iOS. Can I somehow dispatch code blocks in a way, that they will all (a) run in background and (b) on the same thread?
Just like this,
dispatch_asyn(dispatch_get_current_queue, ^ { });
You can use NSOperationQueue. You can make it use just one thread by using method - (void)setMaxConcurrentOperationCount:(NSInteger)count. Set it to 1
NSOperationQueue
- (void)setMaxConcurrentOperationCount:(NSInteger)count