I have an application that works only in the background (by specifying LSBackgroundOnlyin the info.plist file). The problem is that all the blocks that I run in parallel queues are not issued. Code runs in a memory-driven environment - GC is not involved.
The code (simplified) is as follows. Blubber is just some kind of dummy class that contains NSDate for testing. In addition, it overwrites retain, releaseand deallocto perform some logging:
NSOperationQueue *concurrentQueue = [[NSOperationQueue alloc] init];
[concurrentQueue setMaxConcurrentOperationCount:NSOperationQueueDefaultMaxConcurrentOperationCount];
Blubber *aBlubber = [[Blubber alloc] init];
aBlubber.aDate = [NSDate date];
[concurrentQueue addOperationWithBlock:^{
NSAutoreleasePool *blockPool = [[NSAutoreleasePool alloc] init];
NSDate *test = [aBlubber aDate];
NSLog(@"Block DONE");
[blockPool release];
}];
[aBlubber release];
[concurrentQueue release];
(.. ) , , , ( ).
backgorund HID USB, , .
runloop - , ?
( , , , . "" " ", "skyrocketing" .)