1

10 個のタスクがあり、それぞれのダウンロードに 5 秒、つまり合計 50 秒かかる場合、10 個の並列スレッドを実行して 10 個すべてを一度にダウンロードすることで、タスクをより速く達成できるでしょうか?

もっと遅くなると思いますが、よくわかりません。

これは Android にも当てはまりますか? 10 個の並列ダウンロードを実行すると、単一の優先キューで実行するよりも速くなりますか?

編集: ダウンロードが行われる可能性が高い場所では、平均 .20 Mbps ~ .50 Mbps の平均値が表示されます。

4

1 に答える 1

2

ボトルネックがどこにあるかによって異なります。

10 の異なるサーバーからダウンロードしていて、それらすべてが比較的ゆっくりとデータを提供している場合、デバイスには、10 すべて (または少なくとも 1 より大きい数) から同時にダウンロードするのに十分な帯域幅がある可能性があります。その場合、複数のスレッドの方が高速になります。

ただし、1 つのサーバーからの 1 回のダウンロードですべての帯域幅を使い果たすのに十分な場合は、同時に 10 をダウンロードしても、これ以上高速になることはありません。また、余分なオーバーヘッドとリソースの競合により、速度が低下する可能性があります。

于 2013-06-04T16:32:19.847 に答える