0

HTML ページを返す NSURLRequest を取得する必要があるとしましょう。しかし、ページが大きすぎるため、情報の一部のみを読み取る必要があります。約 55 KB で、メインスレッドで実行しています (私の悪い、別のスレッドでこれを行うべきだったのですが、今では複雑すぎて、あまりにも多くの行を書き直す必要があります)、ビューの応答が非常に遅くなります。
要点は、数バイトで構成された、ページのごく一部だけが必要だということです。そのため、タグに含まれる HTML ページの一部だけを受け取りたいと考えています。NSURLRequest でこれを行うにはどうすればよいですか?

4

1 に答える 1

2

応答ヘッダーに必要な情報を HEAD 要求することができます。体の断片が必要な場合は、運が悪いと思います。

どちらの場合でも、メイン スレッドからその要求を取得する必要があるでしょう。ダウンロードするデータが少なくても、接続の待機時間は短縮されず、このリクエストは引き続き UI スレッドをブロックします。モバイル接続の往復時間は数秒にもなり、それを制御することはできません。


編集: 例として、平均 369kbps のダウンが 1124 ミリ秒の遅延があるデバイスからこの回答を投稿しています。アプリがメイン スレッドで同期要求を行うたびに、ダウンロードしたデータを最適化しようとしても、UI が 1 秒以上フリーズします。

于 2012-12-19T04:01:34.957 に答える