当您在PFFile上调用getData时,如果isDataAvailable返回true,那么这不应导致执行阻塞操作,对吗?
我收到以下警告:执行类似操作时出现Warning: A long-running Parse operation is being executed on the main thread.
if (isDataAvailable)
[... getData];
但我仍然得到警告。
最佳答案
警告:正在主线程上执行长时间运行的Parse操作。
发送是因为parse想要警告您不要执行繁重的操作,例如在主线程上获取数据。这可能会导致UI复杂化,并且有可能由于不良的UX而被拒绝。
你应该在跑步
[yourPFFile getDataInBackgroundWithBlock:^(NSData *data, NSError *error) {
if (!error) {
// data available here, put any operations dependent on the data existing here
}
else {
// notify user that there was an error getting file, or handle error
}
}];
有了这个,解析程序首先检查以查看数据是否可用,然后再下载新数据。这样,您可以避免在代码中检查
isDataAvailable
,并且如果存在连接中断或文件很大的情况,它不会阻塞主线程。关于ios - isDataAvailable导致warnParseOperationOnMainThread()Parse.com,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23073228/