-4

インターネットから数ページをダウンロードする必要のあるアプリケーションを書いています。ページ自体はそれほど大きくはありませんが、非常に長い時間がかかります。現在、WebClient.DownloadDataAsyncを使用しています。NetBalancerでアプリケーションに高い優先度を与えようとしましたが、役に立ちませんでした。.Netのインターネットからファイルをダウンロードするために外部ライブラリを使用しない最速の方法は何ですか?

4

2 に答える 2

0

問題は、最も速い方法は何であるかではありません。1ページあたり5分でダウンロードされるものはありません(ページが非常に大きいか、接続が非常に遅い場合を除く)。「速度低下」の原因となっているコードの部分を特定する必要があります。

おそらく、単純なタイマーが役立つでしょう:

Dim viStart As Long = Now.Ticks
'...
'...
'...
Dim viEnd As Long = Now.Ticks - viStart

それらをコードのさまざまな部分に配置して、どれが全体の速度を低下させているかを確認します。次に、ここに質問を投稿してください。

于 2013-03-23T03:32:54.457 に答える
0

同期して実行してみてください。

void Main()
{
    var remotefile = "http://cdn.sstatic.net/stackexchange/img/logos/so/so-logo.png";
    var localfile = @"c:\temp\logo.png";
    using(WebClient wc = new WebClient())
        wc.DownloadFile(remotefile,localfile);
}
于 2013-03-23T03:25:47.340 に答える