`
qindongliang1922
  • 浏览: 2184329 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
7265517b-f87e-3137-b62c-5c6e30e26109
证道Lucene4
浏览量:117541
097be4a0-491e-39c0-89ff-3456fadf8262
证道Hadoop
浏览量:125928
41c37529-f6d8-32e4-8563-3b42b2712a50
证道shell编程
浏览量:59925
43832365-bc15-3f5d-b3cd-c9161722a70c
ELK修真
浏览量:71301
社区版块
存档分类
最新评论

线程的基本知识总结

    博客分类:
  • JAVA
阅读更多

### (一)创建线程的方式

(1)实现Runnable接口

(2)继承Thread类

推荐使用接口,能够做到定义与实现分离,耦合更低


### (二)关于线程的优先级

  thread2.setPriority(Thread.MAX_PRIORITY)

  等级越高,优先运行


### (三)关于线程的yield的方法

关于yield方法,是指当前线程可能运行不太重要的任务,可以通过这个方法
暗示操作系统线程调度我可以晚点执行,先把CPU资源让给优先级给我一样或者大于我的
任务,如果没有没有发现符合条件的线程,那么还会执行该线程的任务


### (四)关于线程的join方法

在main方法中,启动一个线程A,如果执行了A.join()方法,那么
主线程必须等待A线程执行完,才能执行join之后的代码。


### (五)关于线程的sleep方法

让当前线程沉睡一定的周期

### (六)关于线程的interrupt方法

用来告诉某个线程应该停止,如果这个线程当前正在执行wait,sleep,join方法时会抛出InterruptedException
,如果正常状态下,我们可以通过isInterrupted()=true的时候,来停止线程使用return方法


### (七)关于线程的start和run方法

注意,要让线程运行,只能执行start方法,这个方法是native方法,run方法是我们定义
任务的地方,单独的调用run方法,就和调用正常方法是一样的。

start方法只能调用一次,超过一次则会抛出不合法状态异常。

### (八)关于线程的状态


在Oracle的官网文档中,定义了线程有六种状态分别是:

(1)NEW,执行new Thread()后,还没启动的线程

(2)RUNNABLE ,执行完new后,又执行了start方法

(3)BLOCKED  等待获得一个锁的监视器,或者等待进入一个同步块或者方法

(4)WATTING  等待其他的线程执行一个特定的操作,没有任何时间限制

(5)TIMED_WAITING 等待其他的线程在一定的时间周期内

(6)TERMINATED   完成任务后的线程


这有一幅图,总结的比较全面大家可以看下:





(九)总结


本篇文章主要介绍了Java里面一些线程基本的方法和概念,最后又叙述了关于线程运行时的状态,尤其是线程调度这块依赖底层的操作系统,在不同的系统上运行可能得到不同的结果,这一点需要注意。




有什么问题可以扫码关注微信公众号:我是攻城师(woshigcs) 路漫漫其修远兮,吾将上下而求索




0
0
分享到:
评论

相关推荐

    VC 线程基础知识总结

    ### VC 线程基础知识总结 #### 一、线程概念与重要性 在计算机科学领域,线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。程序员可以通过多线程技术,实现并发执行任务,...

    线程基础知识总结分享

    【线程基础知识】 线程是计算机程序执行的基本单元,它在多任务系统中扮演着重要角色。线程和进程是操作系统资源管理的两种基本概念。简单来说,进程是一组独立执行的程序,拥有自己的内存空间,而线程是进程内的...

    Java多线程知识点总结

    在Java中,线程的生命周期包含五个基本状态,分别是新建状态(New)、就绪状态(Runnable)、运行状态(Running)、阻塞状态(Blocked)和死亡状态(Dead)。了解这些状态对于掌握Java多线程编程至关重要。 新建...

    多线程知识总结

    ### 多线程知识总结 #### 一、线程基础概念 **线程状态:** 在探讨多线程之前,我们需要了解线程的基本状态转换。一个典型的线程生命周期包括以下几个阶段: 1. **Start(启动):** 当线程被创建后调用`start()`...

    Java多线程相关知识总结

    ### Java多线程相关知识总结 #### 一、基本概念 多线程是现代编程语言中一项非常重要的特性,尤其在Java...以上就是关于Java多线程的基础知识总结,希望能帮助大家更好地理解和掌握Java多线程的相关概念和技术要点。

    多线程基础个人总结思维导图

    本文将深入探讨多线程的基础知识,包括进程与线程的概念,同步机制,多线程安全问题,以及单例设计模式,并简单提及死锁现象。 首先,我们需要了解**进程与线程**的基本概念。进程是操作系统资源分配的基本单位,...

    java 基础知识总结(经典)

    这篇“Java基础知识总结(经典)”涵盖了Java开发中的核心概念和重要知识点,旨在为初学者和有经验的开发者提供一个全面的回顾。以下是主要的学习点: 1. **Java环境配置**:在开始编程之前,必须安装Java ...

    Java线程基础知识

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

    JAVA中的线程知识点整理

    在Java编程中,线程是并发编程的核心概念,允许程序同时执行多个任务,提高了系统资源的利用率和程序的响应速度。...以上就是Java线程的基本知识点,理解和熟练运用这些概念对于编写高效、稳定的并发程序至关重要。

    Java多线程-多线程知识点总结和企业真题

    ### Java多线程知识点总结及企业真题解析 #### 一、知识点总结 ##### (1)多线程相关概念 1. **程序、进程和线程的区分**: - **程序**:为了完成特定的任务而编写的指令集合。它是静态的概念。 - **进程**:...

    63-Java多线程知识点总结1

    Java多线程知识点总结主要讲解了Java中多线程编程的基础知识,包括线程的启动、volatile变量、多线程共享数据、wait、notify、notifyAll等。 线程的启动 在Java中,线程的启动可以通过start()方法来实现,start()...

    线程及线程应用总结

    - 线程是操作系统分配CPU时间的基本单位,一个进程可以包含一个或多个线程。 - Java中通过`java.lang.Thread`类或者实现`Runnable`接口来创建线程。 - 主线程:每个Java应用程序都有一个主线程,它是程序的入口点...

    操作系统基础知识总结

    操作系统基础知识总结 1. 进程和线程的区别 操作系统是计算机系统的核心,负责管理计算机硬件与软件资源。在操作系统中,进程和线程是两个核心概念,它们是实现系统并发执行的基础。 - 进程是程序的一次执行过程,...

    java基础知识总结

    Java 基础知识总结 Java 是一种广泛使用的编程语言,由 Sun 公司的 James Gosling 等人于 1991 年开始开发。Java 有三种技术架构:JavaEE、JavaSE 和 JavaME。JavaSE 是桌面应用程序的开发基础,JavaEE 是企业环境...

    JAVA多线程(精典总结)

    总结一下,Java多线程涉及的内容广泛,包括线程的基本概念、创建、状态转换、调度和优先级管理。理解并掌握这些知识点对于编写高效并发的Java程序至关重要,也是面试中必不可少的技术点。在实际编程中,合理利用多...

    java线程知识点总结[归类].pdf

    Java 线程知识点总结 Java 线程是一种轻量级的进程...本文总结了 Java 线程的基本概念、创建线程的方式、多线程的运行特性、五种线程状态、同步机制和线程间通讯等知识点,为读者提供了一个系统的 Java 线程知识框架。

    Java线程学习和总结

    在Java编程语言中,线程是程序执行的基本单元,它允许程序并发地执行多个任务。本文将深入探讨Java线程的核心概念、API以及在实际开发中的应用,旨在帮助你理解和掌握这一关键技能。 首先,我们需要了解什么是线程...

    Linux多线程编程知识点总结(C语言)(csdn)————程序.pdf

    本文主要围绕Linux下C语言实现的多线程编程进行知识点总结,涉及线程与进程的区别、多线程的优势、Pthreads API以及线程安全和死锁预防。 首先,线程和进程是操作系统中两种基本的执行单元。线程是进程内部的执行流...

    windows多线程总结

    本文将深入探讨Windows多线程编程的基本概念、线程同步、线程池以及内核对象等相关知识点。 1. **内核对象** - **内核对象的概念**:内核对象是由操作系统内核管理的数据结构,它包含了描述对象状态和特性的信息。...

    Java_多线程编程线程:大总结

    - **进程与线程**:进程是操作系统分配资源的基本单位,拥有独立的内存空间;线程则是进程内的执行单元,共享同一进程的内存空间。现代操作系统中,线程的使用是实现多任务处理的有效途径。 - **Java线程的分类**:...

Global site tag (gtag.js) - Google Analytics