我正在分离一个线程在后台做一些操作,参考下面的代码
currentThread = [[NSThread alloc]initWithTarget:contactServiceselector:@selector(requestForContactBackup:)object:msisdn];
[currentThread start];
这个 currentThread 是 AppDelegate 中声明的指针。我的视图上有一个按钮,点击它,后台线程的执行应该停止。参考以下代码:
-(void)cancelTheRunningTasks {
if(self.currentThread !=nil) {
[currentThread cancel];
NSLog(@"IsCancelled: %d",[currentThread isCancelled]); //here Yes returns
[self removeNetworkIndicatorInView:backUpViewController.view];
}
}
以下代码的问题是后台线程仍在执行中。
我的问题是,有线程引用,如何从主线程取消/停止执行/杀死后台线程?
请建议我可能的解决方案。谢谢。