Java多线程概念知识点有哪些

技术Java多线程概念知识点有哪些这篇文章主要介绍“Java多线程概念知识点有哪些”,在日常操作中,相信很多人在Java多线程概念知识点有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”

本文主要介绍“Java多线程的概念知识点有哪些”。在日常操作中,相信很多人对Java多线程的概念知识点有什么疑惑。边肖查阅了各种资料,整理出简单易用的操作方法,希望能帮助大家解答“Java多线程的概念知识点有哪些”的疑惑!接下来,请和边肖一起学习!

00-1010数据一致性通过锁定来保证。也就是说,当一个线程访问某个数据时,数据受到锁定操作的保护,其他线程在锁定过程中无法访问。

线程安全:

当多个线程访问共享变量时,需要锁定以确保数据同步,这增加了程序的复杂性。避免数据同步的一种方法是不共享变量,例如使用局部变量和ThreadLocal。

00-1010系统为线程分配CUP使用权的过程

协作线程调度

线程的执行时间由线程本身控制。当它完成自己的执行时,它主动通知操作系统切换到另一个线程执行。优点是实现简单,线程可以知道自己的操作,不存在线程同步问题。缺点是线程的执行时间是不可控的,如果一个线程有问题,它可能会一直被阻塞在那里。

抢先线程调度

每个线程的执行时间都是由操作系统分配的,线程的切换不是由线程本身决定的(在Java中,Thread.yield()可以放弃执行时间,但不能得到执行时间)。线程的执行时间可以由系统控制,没有线程会导致进程阻塞。

00-1010可以设置线程的优先级,这样一些线程可以先尽可能多地执行多个执行(Java中有10个线程的优先级来自Thread。线程的最小优先级。MAX_PRIORITY)。当两个线程同时就绪时,优先级越高,执行起来就越容易。但是,优先级并不可靠,因为Java线程是通过映射到本机线程来实现的,所以线程调度仍然依赖于操作系统。

00-1010创建一个尚未启动的新线程。

可运行):可运行包括操作系统中的运行和就绪。处于这种状态的线程可能正在运行,或者正在等待中央处理器为其分配执行时间。线程创建后,其他线程调用该线程的start方法,所以线程在可运行线程池中,变得可运行,只是CPU分配执行时间,已经获得运行所需的其他资源。

等待):无限期(:)处于这种状态的线程不会被分配CPU执行时间,而是等待被其他线程显示和唤醒。例如,不设置超时的Object.wait()方法和Thread.join()方法,以及LockSupport.park()方法。

定时等待):)处于这种状态的线程不会被分配CPU执行时间,但会在一定时间后被系统自动唤醒。例如,设置了超时的Thread.sleep()、Object.wait()和thread.join()、lock support . park nano()和lock support . park直至()。

阻塞):线程被阻塞。与等待的区别在于,阻塞线程正在等待一个排他锁。

阻塞状态是指由于某种原因放弃使用CPU的权利,暂时停止执行,直到线程进入就绪状态,这样才有机会转入运行状态。

已终止):线程完成执行或异常退出run()方法,线程结束其生命周期。

00-1010 1.等待阻塞(无限期等待):运行的线程执行wait()方法,释放占用的资源,JVM将线程放入等待池。进入此状态后,线程不会自动唤醒,只有在其他线程调用notify()或notifyAll()方法时才会唤醒。

2.在同步阻塞:中运行的线程获取对象的同步锁时,如果同步锁被其他线程占用,JVM会将该线程放入锁池。3.在阻塞(限时等待)3360中运行的其他线程已经执行了join()或sleep()方法,或者发起了I/O请求,JVM会将该线程置于阻塞状态。当睡眠()状态超时时。

至此,“Java多线程概念的知识点有哪些”的学习就结束了,希望能解决大家的疑惑。理论和实践的结合可以帮助你学得更好。去试试吧!如果你想继续学习更多的相关知识,请继续关注网站,边肖会继续努力,给大家带来更多实用的文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/115171.html

(0)

相关推荐

  • 关于stm2cumx生成的串口通信USART的使用,2)

    技术关于stm2cumx生成的串口通信USART的使用,2) 关于stm2cumx生成的串口通信USART的使用(2)上面一篇文章讲到在stm32cumx开启串口中断后,系统每接收一个字符就会进入中断一

    礼包 2021年11月29日
  • 图像边缘检测:Canny算子、Prewitt算子和sobel算子

    技术图像边缘检测:Canny算子、Prewitt算子和sobel算子 图像边缘检测:Canny算子、Prewitt算子和sobel算子边缘检测是检测图像中的一些像素点,它们周围的像素点的灰度发生了急剧的

    礼包 2021年10月27日
  • 怎么开源你的Python库

    技术怎么开源你的Python库这篇文章主要介绍了怎么开源你的Python库,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1、源码将代码放在 GitHub

    攻略 2021年10月26日
  • 如何理解aix命令中的capture和script

    技术如何理解aix命令中的capture和script今天就跟大家聊聊有关如何理解aix命令中的capture和script,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有

    攻略 2021年11月26日
  • mysql常用的查询语句(mysql用来分析查询的语句)

    技术MySQL中常用的查询子句有哪些这篇文章给大家分享的是有关MySQL中常用的查询子句有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。对于数据分析,MySQL多采用查询,如数据的排序、分

    攻略 2021年12月20日
  • 前端三大框架

    技术前端三大框架 前端三大框架前台的三个框架是指:1.Angular,是一款前端JavaScriptMVC框架来构建用户界面;2.React,JavaScript框架用于构建用户界面;3.Vue,是一套

    礼包 2021年10月28日