多线程详解p4网图下载

简介: 多线程详解p4网图下载

首先导入commons io.jar包

import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;
import java.net.URL;
public class TestThread2  extends Thread{
    //练习Thread,实现多线程同步下载图片
    private String url;//网络图片地址
    private String name;//保存的文件名
    public TestThread2(String url, String name) {
        this.url = url;
        this.name = name;
    }
    @Override
    public void run() {
        WebDownloader webDownloader = new WebDownloader();
        webDownloader.downloader(url,name);
        System.out.println("下载了文件名为"+name);
    }
    public static void main(String[] args) {
        TestThread2 t1 = new TestThread2("", "");
        TestThread2 t2 = new TestThread2("", "");
        TestThread2 t3 = new TestThread2("", "");
        t1.start();
        t2.start();
        t3.start();
    }
}
//下载器
class WebDownloader{
    public void downloader(String url,String name){
        try {
            FileUtils.copyURLToFile(new URL(url),new File(name));
        } catch (IOException e) {
            e.printStackTrace();
            System.out.println("IO异常");
        }
    }
}


通过使用静态变量和内部类实现参数传递,使用有参构造直接将url地址和下载的文件名传给downloader方法


相关文章
|
3月前
|
数据采集 XML JavaScript
C# 中 ScrapySharp 的多线程下载策略
C# 中 ScrapySharp 的多线程下载策略
|
3月前
|
数据处理 Python
解锁Python多线程编程魔法,告别漫长等待!让数据下载如飞,感受科技带来的速度与激情!
【8月更文挑战第22天】Python以简洁的语法和强大的库支持在多个领域大放异彩。尽管存在全局解释器锁(GIL),Python仍提供多线程支持,尤其适用于I/O密集型任务。通过一个多线程下载数据的例子,展示了如何使用`threading`模块创建多线程程序,并与单线程版本进行了性能对比。实验表明,多线程能显著减少总等待时间,但在CPU密集型任务上GIL可能会限制其性能提升。此案例帮助理解Python多线程的优势及其适用场景。
37 0
|
前端开发 Java
【Java项目】SpringBoot项目的多文件兼多线程上传下载
【Java项目】SpringBoot项目的多文件兼多线程上传下载
392 0
|
6月前
mac m1 多线程下载
mac m1 多线程下载
41 1
java多线程分片下载文件
java多线程分片下载文件
|
Java
Java HTTP多线程下载实现方法
在如今互联网高速发展的时代,对于下载来说,速度是一个非常重要的因素。而多线程下载是一种提高下载速度的常见方法。本文将介绍如何使用Java编程实现HTTP多线程下载功能。
192 0
|
缓存 并行计算 算法
【CUDA学习笔记】第四篇:线程以及线程同步(附案例代码下载方式)(二)
【CUDA学习笔记】第四篇:线程以及线程同步(附案例代码下载方式)(二)
336 0
|
存储 缓存 并行计算
【CUDA学习笔记】第四篇:线程以及线程同步(附案例代码下载方式)(一)
【CUDA学习笔记】第四篇:线程以及线程同步(附案例代码下载方式)(一)
585 0
|
算法 Java Android开发
Android模拟多线程下载
Android模拟多线程下载
84 0
|
Web App开发 Linux Windows
多线程下载、数学求解器... Edge,你还有多少惊喜是我不知道的?
多线程下载、数学求解器... Edge,你还有多少惊喜是我不知道的?
641 0
多线程下载、数学求解器... Edge,你还有多少惊喜是我不知道的?