`
xudongcsharp
  • 浏览: 477003 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

JAVA 线程基础

 
阅读更多
线程:一个程序里不同执行的路径

进程:是一个静态的概念,exe文件、class文件

一个进程里面有一个主线程main

在同一个点上CPU上只支持一个线程

启动一个线程必须调用Thread的start()

创建二种方式:实现Runnable接口、继承Thread类

优先级越高,获得CPU执行的时间越多



java中thread的start()和run()的区别:

1.start()方法来启动线程,真正实现了多线程运行,这时无需等待run方法体代码执行完毕而直接继续执行下面的代码:

通过调用Thread类的start()方法来启动一个线程,
这时此线程是处于就绪状态
并没有运行。
然后通过此Thread类调用方法run()来完成其运行操作的,
这里方法run()称为线程体,
它包含了要执行的这个线程的内容,
Run方法运行结束,
此线程终止,
而CPU再运行其它线程,

2.run()方法当作普通方法的方式调用,程序还是要顺序执行,还是要等待run方法体执行完毕后才可继续执行下面的代码

而如果直接用Run方法,
这只是调用一个方法而已,
程序中依然只有主线程--这一个线程,
其程序执行路径还是只有一条,
这样就没有达到写线程的目的。

-------------------------------------------------------
sleep()是Thread类里面的一个静态方法,其全称为:public static void sleep (long millis) thorows InterruptedException
它的作用是让进程thread休眠一段时间,时间的长短由sleep(long millis)方法的参数millis的大小决定,由于该方法可抛出InterruptedException异常,所以在调用的时候用try{}catch{}来捕获异常。
class Runner extends Thread{
	@Override
	public void run() {
		for(int i =10;i>0;i--){
			System.out.println("data:"+i);
			try {
				sleep(1000);
			} catch (InterruptedException e) {
				return;
			}
		}
	}
}


-------------------------------------------------------
public final void join() throws InterruptedException等待该线程终止。
相当于方法调用

-------------------------------------------------------
public static void yield() 暂停当前正在执行的线程对象,并执行其他线程。


  • 大小: 45.4 KB
分享到:
评论

相关推荐

    Java线程基础教程完整版

    通过深入学习和实践这些Java线程基础知识,你可以有效地编写出高效、安全的多线程程序。记住,理解线程的原理和掌握同步机制是关键,这将有助于解决复杂的并发问题。阅读"Java线程.pdf"文档,你将获得更详细、全面的...

    java线程基础(IBM教程)

    Java线程基础是Java编程中的重要组成部分,尤其在多核处理器和并发编程需求日益增长的今天,理解并掌握线程的使用至关重要。IBM提供了一系列的Java线程教程,旨在帮助开发者深入理解Java线程的基本概念、创建与管理...

    Java线程基础知识

    总结来说,Java线程基础知识涵盖的内容丰富,从线程的基本概念,到线程在程序中的应用,再到线程间的通信和同步机制,都是多线程编程中不可或缺的一部分。掌握这些知识对于开发高性能、多任务并行处理的应用程序具有...

    java线程基础入门

    java 线程基础入门 一个关于计算机的简化的视图是:它有一个执行计算的处理机、包含处理机所执行的程序的ROM(只读存储器)、包含程序所要操作的数据的RAM(只读存储器)。在这个简化视图中,只能执行一个作业。一个...

    java线程基础讲解

    ### Java线程基础详解 #### 一、线程概述 **1.1 什么是线程?** 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。在Java中,线程是程序执行流的最小单元,一个标准的...

    java线程基础

    ### Java线程基础知识点详解 #### 一、Java线程概览 - **定义**: Java线程是指在Java程序中可以并发执行的最小单位。它允许程序中的多个任务同时进行,提高了程序的效率和资源利用率。 - **背景**: 在Java出现...

    java线程.pdf

    ### Java线程基础 在Java语言中,线程是程序执行流的基本单元。一个标准的Java应用程序至少会有一个线程,即主线程,用于执行程序的主要逻辑。通过创建多个线程,可以实现并发执行任务,提高程序的运行效率和响应...

    java线程入门级书籍

    #### 一、Java线程基础知识概述 **1.1 什么是线程?** 线程是程序执行流的最小单元,是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。在Java中,线程是一种轻量级的进程,...

    Java线程基础

    java多线程基础(英文),本文包括线程基础,生命周期,数据访问,线程同步等内容.

    Java线程讲解Java线程讲解

    #### 一、Java线程基础知识 1. **线程与进程的区别**:线程是进程中可独立调度和执行的基本单元,而进程则是资源分配的基本单位。一个进程中可以包含多个线程。 2. **线程的好处**:通过多线程技术,可以显著提高...

    Java线程书

    ### Java线程基础知识详解 #### 一、引言 随着计算机技术的发展,多核处理器已经成为了标配,这为多线程编程提供了强大的硬件支持。Java作为一种广泛应用的编程语言,在其设计之初便内置了对线程的支持,使得...

    java线程与并行(主要讲解java的nio包某些内容)

    #### 一、Java线程基础 在Java中,**线程**是一种轻量级的进程,它允许一个程序同时执行多个任务,从而提高程序的执行效率。Java从1.0版本开始就支持多线程编程,并在后续版本中不断完善。Java线程可以通过继承`...

    java线程实践练习

    一、Java线程基础 Java线程可以通过两种方式创建:继承`Thread`类或实现`Runnable`接口。继承`Thread`类可以直接覆盖`run()`方法,而实现`Runnable`接口则需要将`run()`方法放在实现类中,并通过`Thread`对象启动。`...

    java多线程.pdf

    #### 二、Java线程基础 ##### 1. 什么是线程? 线程是进程中的最小执行单元,是进程内部的一次独立的控制流程。在Java中,每个进程至少有一个线程,即**主线程**。当Java程序启动时,JVM会创建主线程并在该线程中...

    Java线程

    #### 二、Java线程基础知识 **1. 什么是线程?** 线程是操作系统能够进行运算调度的最小单位,它被包含在进程中,是进程的一个实体。在Java中,线程是程序执行流的最小单元,一个标准的Java程序可以包含多个线程,...

    java线程学习教程

    本教程不仅提供了对Java线程基础概念的全面介绍,还深入探讨了如何有效地利用线程来解决实际问题。通过学习这些知识点,开发者可以更好地理解和应用多线程编程技巧,从而编写出高性能、高可靠性的Java应用程序。

    java 线程编程教程

    一、Java线程基础知识 1. **线程的创建方式**:Java提供了两种创建线程的方式,即继承Thread类和实现Runnable接口。继承Thread类直接创建一个新的线程类,而实现Runnable接口则可以避免单继承的限制,更灵活地与...

Global site tag (gtag.js) - Google Analytics