多くのAsynchronousRequestsを送信するとエラーが発生します
質問
このコードを使って私のデバイスを見つけることがあるいくつかの種類をやっています:
NSOperationQueue* quququ;
int i=0;
for (i=0; i<256; i++) {
//NSLog(@"%i",i);
NSString *url=[NSString stringWithFormat:@"http://%i.%i.%i.%i/",myip1,myip2,myip3,i];
//NSLog(@"urlGET = %@", url);
NSURLRequest* request = [NSURLRequest requestWithURL:[NSURL URLWithString:url] cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:1];
[NSURLConnection sendAsynchronousRequest:request queue:quququ completionHandler:^(NSURLResponse *respons, NSData *data, NSError *error) {
//do smth
NSLog(@"data: %ld bytes. res: %@, error: %@", (long)[data length], respons, error);
}];
.
私は何をしていますか? 私は "exc_bad_access"エラーを受け取ります。
解決
コードの最初の行には、NSOperationQueueの参照を宣言しますが、NSOperationQueueオブジェクトを作成しませんでした。つまり、「exc_bad_access」エラーの根本的な原因です。NSOperationQueueオブジェクトを使用してqueue
を割り当ててから、それを使用する必要があります。
コードの最初の行をに変更する
NSOperationQueue* quququ = [[[NSOperationQueue alloc] init] autorelease];
.
これはあなたの問題を解決します。
所属していません StackOverflow