Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 如何在iOS中在后台执行某些任务_Iphone_Sqlite_Ios6 - Fatal编程技术网

Iphone 如何在iOS中在后台执行某些任务

Iphone 如何在iOS中在后台执行某些任务,iphone,sqlite,ios6,Iphone,Sqlite,Ios6,我想在后台执行一些与数据库相关的任务,因为我已经添加了代码 dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^(void) { [lclDB deleteRecoredwithBlock:^(BOOL success) { if (success) {

我想在后台执行一些与数据库相关的任务,因为我已经添加了代码

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,
                                             0), ^(void) {
        [lclDB  deleteRecoredwithBlock:^(BOOL success) {
            if (success) {
                NSLog(@"Deletion Succesful...");
            }
        }];
    });

deleteRecord函数在内部按顺序调用多个方法以在本地数据库中执行删除操作。现在我必须等待所有删除操作执行。但我想在后台执行整个删除操作。如果已知任何一个,请帮助我解决这些问题。

任何NSObject都可以在后台执行操作使用以下命令:

[myObject performSelectorInBackground:@selector(anAction) withObject:nil];

尝试执行选择背景:withObject:方法

[self performSelectorInBackground:@selector(backgroundMethod) withObject:nil];
您也可以使用

这是您的
deleteDataWithOperation
方法-

-(void)deleteDataWithOperation
{
   //Do your work here
}

你的电话是对的。您正在启动
dispatch\u async
块。在异步删除记录时,您可以继续执行其他操作。只需在该代码后添加一个
NSLog
。它将在“删除成功…”之前打印
-(void)deleteDataWithOperation
{
   //Do your work here
}