怎么在java中实现一个多线程爬虫

怎么在java中实现一个多线程爬虫?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

Java可以用来干什么

Java主要应用于:1. web开发;2. Android开发;3. 客户端开发;4. 网页开发;5. 企业级应用开发;6. Java大数据开发;7.游戏开发等。

一、java多线程实现方式

继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程。

继承Thread类、实现Runnable接口方式线程执行完后都没有返回值

使用ExecutorService、Callable、Future是带返回值的。

二、实现java多线程爬虫:在for循环中让每个子线程都执行RunThread类中的run方法

1、创建一个收集线程的列表

package multithreading;import java.util.ArrayList;import java.util.List;/**
 * Created by hg_yi on 17-6-13.
 *
 * 线程计数器是一个共享变量
 */public class MultithreadCrawler{
    public static void main(String[] args) throws InterruptedException {        //创建一个收集线程的列表
        List<Thread> threadList = new ArrayList<Thread>();

2、创建线程的个数

int threadNum = 5;

        RunThread run = new RunThread();
        run.setThreads(threadNum);

3、创建5个线程,并对其进行收集

for (int i = 0; i < threadNum; i++) {
            Thread thread = new Thread(run);
            thread.start();
            threadList.add(thread);
        }

4、main线程需要等待所有子线程退出

 Thread.currentThread().join();
    }
}

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对亿速云的支持。