1
NSURLSessionDataTask *dataTask = [self.session dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
if (error)
{
NSLog(@"Did fail with error %@" , [error localizedDescription]);
fail();
return ;
}
else
{
}
我用dataTaskWithRequest
发送异步HTTP请求和完成块,我想运行一个python script
完成。如何等待NSTask在异步块
NSTask * task = [[NSTask alloc] init];
[task setLaunchPath:kPythonPath];
[task setArguments:@[self.scriptFileFullPath,outputFile]];
[task launch];
[task waitUntilExit];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(checkPythonTaskStatus:) name:NSTaskDidTerminateNotification object:task];
python
任务可能需要很长时间,所以我应该等待它的完成。但NSTaskDidTerminateNotification
将不会被发送,因为NSTask
正在单独的线程中运行。任何人都知道如何等待NSTask
在这种情况下完成?