说明:main代表一个线程,这个是主线程;而继承自Thread或实现Runable接口的类叫做线程类,线程类内部的run方法是用户要执行的任务,叫做线程体。线程体需要开发者自己实现。package com.boonya.base;
/*主线程*/
public class MultipleThread {
@SuppressWarnings("deprecation")
public static void main(String[] args) {
System.out.println("我是主线程");
ThreadUseExtendsThread thread1=new ThreadUseExtendsThread(); //第1个线程
Thread thread2=new Thread(new ThreadUseRunable(), "thread2"); //第2个线程
thread1.start();
thread1.setPriority(6); //设置线程一的优先级为6
try {
System.out.println("主线程挂起5秒.......");
Thread.sleep(5000); //主线程将挂起5秒
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("重回主线程");
if(thread1.isAlive()){
thread1.stop();
System.out.println("thread1休眠时间过长,主线程杀死thread1");
}else{
System.out.println("主线程没有发现thread1,thread1已经顺利执行完毕");
thread2.start(); //启动线程2
}
try {
System.out.println("主线程挂起3秒......");
Thread.sleep(3000); //主线程将挂起3秒
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("重回主线程");
if(thread2.isAlive()){
thread2.stop();
System.out.println("thread2休眠时间过长,主线程杀死thread2");
}else{
System.out.println("主线程没有发现thread2,thread2已经顺利执行完毕");
System.out.println("主线程结束");
}
}
}
/*执行线程体:---《方式1》-------*/
class ThreadUseExtendsThread extends Thread{
public ThreadUseExtendsThread(){}
@Override
public void run() {
System.out.println("---------我是Thread的子类线程实例-------------");
System.out.println("我将挂起5秒");
System.out.println("回到主线程,请稍等,刚才主线程挂起可能还没有醒来");
try {
System.out.println("挂起5秒......");
Thread.sleep(10000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
/*执行线程体:---《方式2》-------*/
class ThreadUseRunable implements Runnable{
public ThreadUseRunable(){}
@Override
public void run() {
System.out.println("---------我是Thread类线程实例的实现了Runable接口-------------");
System.out.println("我将挂起1秒");
System.out.println("回到主线程,请稍等,刚才主线程挂起可能还没有醒来");
try {
System.out.println("挂起1秒.......");
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
Java多线程编程是Java开发中的重要组成部分,它允许程序同时执行多个任务,极大地提高了程序的效率和响应性。在Java中,多线程主要通过继承Thread类或实现Runnable接口来实现。本教程《Java多线程编程核心技术》将...
从给定的文件信息中,我们可以提取出关于Java多线程编程的重要知识点,涉及线程创建、线程生命周期以及线程间的同步与通信等核心概念。 ### Java多线程编程实例解析 #### 1. 创建线程的方式 在Java中,创建线程有...
《Java多线程编程实例》这本书深入浅出地探讨了Java中的多线程编程,通过丰富的实例帮助读者理解和掌握这一复杂主题。随书源码提供了实际操作的机会,以便读者能够亲手实践书中的示例,加深理解。 1. **线程创建...
Java多线程是Java编程中的重要概念,尤其在开发高性能、高并发的应用中不可或缺。本示例旨在为初学者提供一个全面理解Java多线程的起点。通过学习这个实例,你可以掌握如何创建和管理线程,理解线程同步与通信的重要...
### Java多线程编程详解与实战案例 #### 理解多线程概念与Java内存模型 多线程,作为现代编程中的一项关键技术,允许在单一应用程序中并发执行多个指令流,每个这样的指令流被称为一个线程。在Java中,线程被视为...
Java多线程是Java编程中的重要概念,尤其在如今的多核处理器环境下,理解并熟练掌握多线程技术对于提高程序性能和响应速度至关重要。本资料详细讲解了Java多线程的原理,并提供了丰富的实战代码,非常适合Java初学者...
综上所述,Java多线程编程不仅提供了强大的并发执行能力,同时也带来了复杂度更高的问题,需要开发者深入了解并妥善处理。掌握Java多线程编程的精髓,将为构建高性能、高可用性的应用打下坚实的基础。
在Java编程语言中,多线程是核心特性之一,它允许程序同时执行多个任务,从而提高了应用程序的效率和响应...文档“java多线程实例.docx”可能包含具体的示例代码和详细解释,建议参考学习,以加深对Java多线程的理解。
### Java多线程编程知识点详解 #### 一、Java多线程基础知识 ##### 1.1 什么是线程? 线程是程序中的最小执行单元,是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。在Java中...
### JAVA编程高级-多线程编程 #### 一、多线程简介 多线程编程是一种软件技术,它允许在单个程序内并发执行多个控制流。这种技术极大地提高了程序的执行效率和响应能力,特别是在现代多核处理器环境中。本文档主要...
### Java多线程编程知识点详解 #### 一、Java多线程编程的优越性 Java的多线程编程相比C或C++具有显著优势,主要归功于Java语言级的原生支持。Java的设计者们深刻理解到多线程对于现代软件开发的重要性,因此将...
Java多线程编程是Java开发中的重要组成部分,它允许程序同时执行多个任务,提升系统效率。在本实例源码中,包含17个章节和上百个实例,旨在深入讲解Java多线程的核心概念和实际应用。 一、线程基础知识 在Java中,...
《Java多线程编程实战指南(设计模式篇)》由黄文海撰写,是一本深入探讨Java多线程编程和设计模式的专业书籍。书中详细介绍了如何在Java环境中利用多线程来实现高效的并发处理,同时结合设计模式,帮助开发者更好地...
Java多线程编程是Java开发中的重要组成部分,它允许程序同时执行多个任务,提升软件的效率和响应性。本文档详细介绍了Java中的线程概念、原理以及如何在Java中创建和启动线程。 首先,线程是操作系统实现多任务处理...
Java多线程编程是提升程序性能和响应性的关键技术。理解多线程的概念,掌握线程的创建、同步、通信、死锁避免等核心知识点,以及合理使用线程池,对于编写高效、稳定的并发程序至关重要。通过实践,开发者可以更好地...
总而言之,这本书全面覆盖了Java多线程编程的各个方面,不仅介绍了基础理论,还提供了实际操作示例,对于想要提升Java并发编程能力的开发者来说,是一份宝贵的资源。通过深入学习和实践,开发者不仅可以提升个人技能...
Java 多线程编程是一种能够同时执行多个任务的技术,可以提高程序的并发性和响应性,使得程序能够更好地利用 CPU 资源。本文将通过一个简单的 Java 多线程编程示例,向读者介绍多线程的基本概念和使用方法。 线程的...
Java 多线程-Socket 编程 Java 多线程-Socket 编程是指在 Java 语言中使用多线程技术来实现网络编程,特别是使用 Socket 编程来实现客户端和服务器端的通信。在 Java 中,多线程可以使用 Thread 类和 Runnable 接口...
### JAVA多线程案例教学详析 #### 一、引言 随着计算机技术的发展,多核处理器已经成为...通过上述介绍的学习资料,新入行的开发者可以快速掌握Java多线程编程的核心概念和技术实践,为进一步深入研究打下坚实的基础。