2017-09-04 18 views
0

大きなファイルがありますが、このファイルを2つの同時スレッドでダウンロードしたい場合は、両方のスレッドがチャンクでチャンクをダウンロードし、同じファイルを連結でローカルファイルに保存します。マルチスレッドの概念で単一ファイルをダウンロードする方法

iOSで可能かどうかはわかりません。はいの場合は、達成方法を教えてください。コードは必要ありません。コンセプトを共有することはうまくいくだろうが、技術用語はiOSのコンテキストにあるべきである。 NSURLSessionはiOS向けにサポートされているAPIです。

+0

なぜ同じファイルを2回ダウンロードしたいですか? – Lion

+0

あなたはこれがほんの要求だと言うことができます.....私は可能かどうかを見ています。 –

+0

それはあなたの希望であればどんな速さもないでしょう – JustSid

答えて

0

範囲リクエストを使用して、1つのファイルを複数の部分でダウンロードできます。そのためには、リクエストに範囲ヘッダーを設定する必要があります。 g:Range: bytes=200-1000は、ファイルの200〜1000バイトだけをロードしますが、サーバーがサポートするかどうかを確認する必要があります。

NSMutableRequestの(範囲)ヘッダーをaddValue(_:forHTTPHeaderField:)またはaddValue:forHTTPHeaderField:と設定できます。 NSURLSessionでリクエストを送信すると、自動的に並行して実行されます。

+0

もっと具体的に....そして結果を与えることも... :) なぜこれが重要なのか考えていますか?1つではなく2つの別々のスレッドで作業するのがよいでしょうか???? –

+0

私は正しいかもしれません... 1つのスレッドがタスクをダウンロードするのに10分かかりますが、2スレッドがタスクをダウンロードするのに5〜5分かかる場合は、5分でダウンロードすることができます...ありがとうmacmoonshine。 .. –

+0

'NSURLSession'はリクエストをバックグラウンドで実行します。別のスレッドを開始しないでください。これは必要ではありません。 – clemens

関連する問題