バックグラウンドで何らかの操作を行うためにスレッドを切り離しています。以下のコードを参照してください。
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];
}
}
以下のコードの問題は、バックグラウンド スレッドがまだ実行中のままであることです。
私の質問は、スレッド参照があり、メインスレッドからバックグラウンドスレッドをキャンセル/停止/強制終了する方法ですか?
可能な解決策を教えてください。ありがとう。