快速下载1,000多个文件?

我目前有一个链接到图像或MP4文件的URL列表,重新编码以使其运行得更快的最佳方法是什么?我知道我可以运行多个线程,甚至可以并行运行,但是最好的方法是什么?只要速度不像现在那么慢,我就不会太担心,但是我不想过度消耗设备资源(例如CPU试图加快速度)的力量。


public static void Download(string saveLocation, List<string> urls)

{

    using (var client = new WebClient())

    {

        foreach (var url in urls)

        {

            Console.WriteLine("Downloading: " + url);

            client.DownloadFile(url, saveLocation + "/" + url.Split('/').Last());

        }

    }

}


qq_笑_17
浏览 186回答 3
3回答

慕妹3242003

将您的功能标记为async并用于DownloadFileAsync保存文件。在返回之前,将任务列表捕获到一个新列表await中,Task.WhenAll(yourTasks)然后将其捕获。
打开App,查看更多内容
随时随地看视频慕课网APP