美文网首页
Java中多线程状态和进程状态

Java中多线程状态和进程状态

作者: 啊啊啊哼哼哼 | 来源:发表于2020-09-01 17:30 被阅读0次
状态转换图.png

Java源码中给出了5中状态:

  • New:新new出的一个线程对象,还没有调用run方法;
  • Runnable: 可运行状态,线程可能在运行,也可能在等待CPU资源;
  • Blocked: 等待一个可重入锁,或者等待一个锁;
  • Waiting: wait(), join()方法调用后进入的一个状态,需要通过notifyAll或者notify进行一个唤醒;
  • TIMED_WAITING: sleep方法,wait(time)方法,或者join(time)方法调用后会进入的一个状态,需要通过notifyAll或者notify进行一个唤醒或者睡眠时间到会自动进入Runnable。

Blocked和waiting状态的区别:
一个处理waiting状态的线程被唤醒后进入Blocked状态,竞争synchronized锁。

进程的三种状态:
就绪态:除CPU资源以外的其他资源已经准备好;
运行态:正在CPU运行;
阻塞态:等待一些其他时间的完成,比如I/O;

挂起(suspend)和阻塞的区别:

  • 挂起是主动行为(需要调用Resume方法主动激活),阻塞是被动行为(等待某件事件完成自动恢复为就绪状态);
  • 挂起不会释放CPU资源,阻塞会释放CPU资源;
  • 操作系统任务调度会忽略挂起的任务。
进程状态转换.png

进程调度算法:FIFO,时间片轮转,短作业优先,优先级调度,多级队列调度算法,多级队列反馈调度算法

虚拟内存:
非递归中序遍历
RC和RR怎么实现
I/O类型:
BIO
NIO
AIO

相关文章

  • Java中多线程状态和进程状态

    Java源码中给出了5中状态: New:新new出的一个线程对象,还没有调用run方法; Runnable: 可运...

  • java多线程基础

    多线程 线程,进程,多线程 一、java线程 1. 线程状态 2. 线程方法 方法说明setPriority(in...

  • 进程状态和线程状态

    进程状态有五种: 1.创建状态(new):进程正在被创建,尚未到就绪状态。 2.就绪状态(ready):进程已处于...

  • 进程的状态和转换

    进程的状态和转换 进程状态 进程状态的转换 总结:

  • Java并发编程(二)同步

    如果你的java基础较弱,或者不大了解java多线程请先看这篇文章java多线程(一)线程定义、状态和属性 同步一...

  • Java知识梳理六

    一、Java多线程一 1.谈谈线程的生命周期和状态转移 关于线程生命周期的不同状态,在Java 5以后,线程...

  • Coroutines Channels

    Coroutines Channels Java中的多线程通信, 总会涉及到共享状态(shared mutable...

  • Java基础——多线程

    Java语言提供了非常优秀的多线程支持。可以通过非常简单的方式来启动多线程 线程概述 线程和进程 进程:所有运行中...

  • Java多线程基础学习

    Java多线程基础 1.多线程简介 在了解多线程之前我们要先知道什么是进程和线程: 进程:进程是系统进行调度和分配...

  • 进程的描述与控制

    进程的定义和特征 进程的特征 进程的基本状态及转换 进程的三种基本状态 三种基本状态的转换 创建状态和终止状态 挂...

网友评论

      本文标题:Java中多线程状态和进程状态

      本文链接:https://www.haomeiwen.com/subject/uqbyrktx.html