My code will receive a push notification containing the URL of a remote image to download and display and I was planning on placing a call to NSData:dataWithContentOfURL in an operation queue to run separately from the main thread. 
But I'm not clear on the lifetime of the operation and when/how I should delete it. 
For example suppose I have code similar to this:

```
- (void) onReceiptOfPushNotification:(NSURL*) url
{
    NSOperationQueue *q = [[NSOperationQueue alloc] init];
    [q addOperationWithBlock: ^{
        NSData*  data = [NSData dataWithContentsOfURL: url];
        [[NSOperationQueue mainQueue] addOperationWithBlock:^ {
            do stuff with the data and image
        }
    }
}

```

My question is as q is a local variable of onReceiptOfPushNotification then when and how to delete it once the operation has completed?