3

を使用しNSURLConnectionている場合、以下を使用して接続をスケジュールするオプションがありましたNSRunLoop

- (void)scheduleInRunLoop:(NSRunLoop *)aRunLoop forMode:(NSString *)mode

渡すNSDefaultRunLoopModeと、ユーザーがスクロールした場合に効果的に接続が一時停止します。これは、ユーザー エクスペリエンスがダウンロードの影響を受けないため、パフォーマンスに優れていました。

に対して同様の動作を得る方法はありNSURLSessionますか? ドキュメントを読み、セッションを構成するさまざまな方法を試しましたが、成功しませんでした。

4

2 に答える 2

0

誰かがこの問題に再び遭遇した場合。ダウンロード タスクを別の実行ループにスケジュールすることはできませんが、スクロール中のパフォーマンスを大幅に改善する別の実行ループ モードで応答を処理できます。

[self performSelectorOnMainThread:@selector(requestDidFinishLoadingWithData:)
                       withObject:data
                    waitUntilDone:YES
                            modes:@[NSDefaultRunLoopMode]];
于 2015-10-01T07:52:07.490 に答える