2
私はconnectionDidFinishLoading時にスレッドが起動しているアプリケーションを開発しています。スレッドを止めるにはどうすればいいですか?
- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
[downloadingthread cancel];
downloadingthread = [[NSThread alloc]initWithTarget:self selector:@selector(startusingthread) object:nil];
[downloadingthread start];
}
connectionDidFinishLoadingが複数回呼び出されるため、ダウンロードスレッドを停止してからもう一度開始します。最後のスレッドのみを実行しようとしています。間にスレッドを止めるのを助けてください。
あなたの恩人に感謝しますが、スレッドで遊ぶことができれば私たちはiPhoneの多くのことをやり遂げることができると考えています。私たちのアプリケーションはiPhoneのスレッドの1つのタイプです。最終的にメインスレッドは中間に停止します。その間にスレッドを停止することもできます。 – Nit
'stop-in-between'によって、スレッドの実行ループを参照していると思います。実行ループが実行され、休止してから、指定された時間間隔で再開します。実行ループを停止するように伝えるのは安全です。私は答えて言いました。実行ループを停止するのは即時(強制的に)ではなく、スレッドがアイドル状態に入るか、アイドル状態から出るまで待機します。タイマーをインストールし、実行ループによって実行されるメッセージを送信することができます。これは良い、安全なアプローチです。 – justin