私のアプリでは、テーブルビューにロードするレコードが約70000個あります。読み込みには10分程度の時間がかかります。メインのUIthreadをブロックしているため、戻ったりボタンにアクセスしたりできません。この目的のために別のスレッドを使用するような別の方法や、別のアプローチはありますか?なんとか見せてください。
ありがとう、Vinod。
私のアプリでは、テーブルビューにロードするレコードが約70000個あります。読み込みには10分程度の時間がかかります。メインのUIthreadをブロックしているため、戻ったりボタンにアクセスしたりできません。この目的のために別のスレッドを使用するような別の方法や、別のアプローチはありますか?なんとか見せてください。
ありがとう、Vinod。
NSThreadを使用します。
コードは次のようになります。
NSThread *thread = [NSThread initWithTarget:self selector:@selector(loadData:) object:nil];
[thread start];
[thread release];
-(void) loadData:(id) obj {
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
// load data
[pool release];
}
新しく作成されたスレッドからメインUIスレッドで何かを行う必要がある場合はperformSelectorOnMainThread:withObject
、現在のオブジェクトのメソッドを使用します。