0

みんな。ファイルにこのコードがあります。

AFHTTPClient *_client = [[AFHTTPClient alloc] initWithBaseURL:[NSURL URLWithString:@"http://192.168.1.1/file/download/"]];
[_client registerHTTPOperationClass:[AFHTTPRequestOperation class]];
[_client setDefaultHeader:@"Content-Type" value:@"application/json;charset=utf-8"];
[_client setDefaultHeader:@"Accept" value:@"*/*"];
[_client setDefaultHeader:@"Content-Length" value:@"858663"];

NSURLRequest *request = [_client requestWithMethod:@"GET" path:@"a.png" parameters:nil];
AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
[operation setDownloadProgressBlock:^(NSUInteger bytesWritten, long long totalBytesWritten, long long totalBytesExpectedToWrite) {
    NSLog(@"download %lld/%lld bytes", totalBytesWritten, _task.fileTotalBytes);
}];

[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
    //some code       
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
    //some code
}];

[_client enqueueHTTPRequestOperation:operation];

以下は、コンソールに表示されるダウンロード ファイルのログ出力です。

23:55:13.731 MyP ダウンロード 1258/858663 バイト 23:55:14.566 MyP ダウンロード 815538/858663 バイト 23:55:14.567 MyP ダウンロード 844994/858663 バイト 23:55:34.3 MyP ダウンロード 847874/858663 バイト 34.3554ダウンロード 849314/858663 バイト 23:55:34.362 MyP ダウンロード 850754/858663 バイト 23:55:34.364 MyP ダウンロード 852186/858663 バイト 23:55:34.366 MyP ダウンロード 853626/858663 バイト 23:55:34.372 MyP ダウンロード 83 206 85/85 :55:34.374 MyP ダウンロード 856506/858663 バイト 23:55:34.375 MyP ダウンロード 857946/858663 バイト 23:55:34.375 MyP ダウンロード 858663/858663 バイト

最後のいくつかのチャンク ファイルが 20 秒かかるのはなぜですか?

特に 23:55:14.567 MyP ダウンロード 844994/858663 バイト
から 23:55:34.352 MyP ダウンロード 847874/858663 バイト

スレッドが 20 秒間スリープしているようです。

4

1 に答える 1

0

行 [_client setDefaultHeader:@"Content-Length" value:@"858663"]; を削除するだけで修正しました。

于 2013-04-08T08:03:28.543 に答える