I have some requests in the same time, I want to deal with it until they are all done.
Here are requests:

```
[self getProfileData];
[self checkNewSystemMessage];
[self checkChatMessage];

```

In the `getProfileData` it looks like:

```
AFHTTPRequestOperationManager* manager = [AFHTTPRequestOperationManager manager];
manager.requestSerializer.timeoutInterval = TIMEOUT_INTERVAL;
NSString * portNumber = [[NSUserDefaults standardUserDefaults] objectForKey:@"portNumber"];

[manager GET:URL_ADDRESS(portNumber,@"JsonEntryManager") parameters:dic success:^(AFHTTPRequestOperation *operation, id responseObject) {

    NSLog(@"%@",responseObject);
    //Do something...
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
    [self performSelector:@selector(getProfileData) withObject:nil afterDelay:REQUEST_AGAIN_TIME];
}];

```

and others are the same.
I want do something when they are all done. The only way I thought is that request them one by one. Obviously it's a foolish idea. So how can I know the end time?