2

XML 解析用に同時に約 15 の URL があります。XML 解析に KMXML パーサーを使用しています。

スレッドを使用して同時に解析を行うにはどうすればよいですか。その解析からの応答を処理する方法。これらの応答を Sq-lite データベースに保存するにはどうすればよいですか。

解析用の私のコードは次のとおりです。

 NSArray* yourURLs = [NSArray arrayWithObjects:@"http://www.designworldonline.com/rss/",@"http://www.3dcadtips.com/feed/",@"http://feeds.feedburner.com/MakePartsFast",@"http://www.designworldonline.com/category/technologies/electricalelectronic/feed", nil];

for(NSString* url in yourURLs) {
        [self performSelectorInBackground:@selector(parse:) withObject:url];
    }

-(void)parse:(NSString*)link {

KMXMLParser *parser = [[KMXMLParser alloc] initWithURL:link delegate:self];
    _parseResults = [parser posts];

     [self performSelectorOnMainThread:@selector(update)  withObject:_parseResults waitUntilDone:NO];

}

-(void)update
{
 [pd addObject:_parseResults];
}

ただし、このコーディングで _parseresults=[parser posts];は、各リンクではなく、最後のリンクに対してのみ呼び出されます。

そして、配列で応答を得たpdのは、最後のリンクと9回だけです。解析メソッドが前回のみ呼び出される理由がわかりません。

4

2 に答える 2

0

操作キューを使用して、すべての操作を操作キュー内に追加します。

このリンクをチェックしてください... http://developer.apple.com/library/mac/#samplecode/NSOperationSample/Introduction/Intro.html%23//apple_ref/doc/uid/DTS10004184

それが役立つことを願っています

ハッピーコーディング。

于 2012-12-11T07:19:41.830 に答える
0

フレームワークを使用してみてください。

https://github.com/AFNetworking/AFNetworking

https://github.com/pokeb/asi-http-request

于 2012-12-11T07:22:59.407 に答える