`

Java多线程编程#执行线程示例

阅读更多
说明: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多线程编程是Java开发中的重要组成部分,它允许程序同时执行多个任务,极大地提高了程序的效率和响应性。在Java中,多线程主要通过继承Thread类或实现Runnable接口来实现。本教程《Java多线程编程核心技术》将...

    java多线程编程实例

    从给定的文件信息中,我们可以提取出关于Java多线程编程的重要知识点,涉及线程创建、线程生命周期以及线程间的同步与通信等核心概念。 ### Java多线程编程实例解析 #### 1. 创建线程的方式 在Java中,创建线程有...

    《Java多线程编程实例》随书源码

    《Java多线程编程实例》这本书深入浅出地探讨了Java中的多线程编程,通过丰富的实例帮助读者理解和掌握这一复杂主题。随书源码提供了实际操作的机会,以便读者能够亲手实践书中的示例,加深理解。 1. **线程创建...

    java 多线程示例

    Java多线程是Java编程中的重要概念,尤其在开发高性能、高并发的应用中不可或缺。本示例旨在为初学者提供一个全面理解Java多线程的起点。通过学习这个实例,你可以掌握如何创建和管理线程,理解线程同步与通信的重要...

    java多线程编程-详细炒作例子

    ### Java多线程编程详解与实战案例 #### 理解多线程概念与Java内存模型 多线程,作为现代编程中的一项关键技术,允许在单一应用程序中并发执行多个指令流,每个这样的指令流被称为一个线程。在Java中,线程被视为...

    java多线程的讲解和实战

    Java多线程是Java编程中的重要概念,尤其在如今的多核处理器环境下,理解并熟练掌握多线程技术对于提高程序性能和响应速度至关重要。本资料详细讲解了Java多线程的原理,并提供了丰富的实战代码,非常适合Java初学者...

    Java多线程编程详解

    综上所述,Java多线程编程不仅提供了强大的并发执行能力,同时也带来了复杂度更高的问题,需要开发者深入了解并妥善处理。掌握Java多线程编程的精髓,将为构建高性能、高可用性的应用打下坚实的基础。

    java多线程示例

    在Java编程语言中,多线程是核心特性之一,它允许程序同时执行多个任务,从而提高了应用程序的效率和响应...文档“java多线程实例.docx”可能包含具体的示例代码和详细解释,建议参考学习,以加深对Java多线程的理解。

    Java多线程编程

    ### Java多线程编程知识点详解 #### 一、Java多线程基础知识 ##### 1.1 什么是线程? 线程是程序中的最小执行单元,是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。在Java中...

    4JAVA编程高级-多线程编程

    ### JAVA编程高级-多线程编程 #### 一、多线程简介 多线程编程是一种软件技术,它允许在单个程序内并发执行多个控制流。这种技术极大地提高了程序的执行效率和响应能力,特别是在现代多核处理器环境中。本文档主要...

    java多线程编程

    ### Java多线程编程知识点详解 #### 一、Java多线程编程的优越性 Java的多线程编程相比C或C++具有显著优势,主要归功于Java语言级的原生支持。Java的设计者们深刻理解到多线程对于现代软件开发的重要性,因此将...

    java多线程编程实例_Source

    Java多线程编程是Java开发中的重要组成部分,它允许程序同时执行多个任务,提升系统效率。在本实例源码中,包含17个章节和上百个实例,旨在深入讲解Java多线程的核心概念和实际应用。 一、线程基础知识 在Java中,...

    Java多线程编程实战指南(设计模式篇)

    《Java多线程编程实战指南(设计模式篇)》由黄文海撰写,是一本深入探讨Java多线程编程和设计模式的专业书籍。书中详细介绍了如何在Java环境中利用多线程来实现高效的并发处理,同时结合设计模式,帮助开发者更好地...

    Java多线程详解及示例

    Java多线程编程是提升程序性能和响应性的关键技术。理解多线程的概念,掌握线程的创建、同步、通信、死锁避免等核心知识点,以及合理使用线程池,对于编写高效、稳定的并发程序至关重要。通过实践,开发者可以更好地...

    Java多线程编程实战指南核新篇&设计篇&以及和核新篇的案例代码

    总而言之,这本书全面覆盖了Java多线程编程的各个方面,不仅介绍了基础理论,还提供了实际操作示例,对于想要提升Java并发编程能力的开发者来说,是一份宝贵的资源。通过深入学习和实践,开发者不仅可以提升个人技能...

    java多线程编程源码范例和详细说明(由浅入深,深度解读在资料后半部分).docx

    Java 多线程编程是一种能够同时执行多个任务的技术,可以提高程序的并发性和响应性,使得程序能够更好地利用 CPU 资源。本文将通过一个简单的 Java 多线程编程示例,向读者介绍多线程的基本概念和使用方法。 线程的...

    Java多线程-Socket编程

    Java 多线程-Socket 编程 Java 多线程-Socket 编程是指在 Java 语言中使用多线程技术来实现网络编程,特别是使用 Socket 编程来实现客户端和服务器端的通信。在 Java 中,多线程可以使用 Thread 类和 Runnable 接口...

    详细剖析JAVA多线程案例教学

    ### JAVA多线程案例教学详析 #### 一、引言 随着计算机技术的发展,多核处理器已经成为...通过上述介绍的学习资料,新入行的开发者可以快速掌握Java多线程编程的核心概念和技术实践,为进一步深入研究打下坚实的基础。

    java 多线程操作数据库

    ### Java多线程操作数据库:深入解析与应用 在当今高度并发的应用环境中,Java多线程技术被广泛应用于处理数据库操作,以提升系统的响应速度和处理能力。本文将基于一个具体的Java多线程操作数据库的应用程序,深入...

Global site tag (gtag.js) - Google Analytics