蚌埠北大青鸟IT培训学校

试听课 + 活动课
填写信息优先获取试听课

位置:学校首页 > 学校动态>Java创建线程的方式

Java创建线程的方式

  创建Java线程的四种常见方式是:继承Thread类、实现Runnable接口、通过ExecutorService和Callable实现具有返回值的线程,以及基于线程池。

Java创建线程的方式

  1、继承Thread类。线程类实现了Runnable接口,并定义了一些操作线程的方法,因此我们可以通过继承线程类来创建一个线程。

  具体的实现方式是创建一个类并继承Thread接口,然后实例化线程对象并调用start方法来启动线程。

  start是一个native方法,在操作系统上启动一个新的线程,并较终执行run方法来启动线程。run方法里面的代码是Thread类的具体实现逻辑。

  2、实现Runnable接口。根据Java编程语言的规范,如果一个子类已经继承(extends)了一个类,就不能再直接继承Thread类,所以可以通过实现Runnable接口来创建一个线程。

  具体的实现过程是:通过实现Runnable接口创建一个ChildrenClassThread线程,实例化一个名为childrenThread的线程实例,创建一个Thread类的实例并传入childrenThread线程实例,然后调用该线程的start方法来启动该线程。

  3、通过ExecutorService和Callable实现有返回值的线程。有时,我们需要在主线程中开启多个线程来并发执行一个任务,然后收集每个线程返回的结果,并将较终结果汇总,这时我们需要使用Callable接口。

  具体的调用过程为:创建一个线程池、一个用于接收返回结果的Future List及Callable线程实例,使用线程池提交任务并将线程执行之后的结果保存在Future中,在线程执行结束后遍历Future List中的Future对象,在该对象上调用get方法就可以获取Callable线程任务返回的数据并汇总结果。

  4、基于线程池。线程是非常宝贵的计算资源,在每次需要时创建并在运行结束后销毁是非常浪费资源的。我们可以使用缓存策略并使用线程池来创建线程,具体过程为创建一个线程池并用该线程池提交线程任务。

领取试听课
温馨提示:为不影响您的学业,来校区前请先电话或QQ咨询,方便我校安排相关的专业老师为您解答
版权所有:搜学搜课(www.soxsok.com) 技术支持:搜学搜课网