当前位置: 首页 > news >正文

微信网站怎么收款网站做专题主题该怎么选

微信网站怎么收款,网站做专题主题该怎么选,省建设厅执业资格注册中心网站,足球直播网站怎么做目录 一、什么是监视器#xff08;Monitor#xff09;二、监视器的组成部分三、线程的状态转换四、总结 一、什么是监视器#xff08;Monitor#xff09; 在Java中#xff0c;监视器#xff08;Monitor#xff09;是用来实现线程同步的一种机制。每个Java对象都有一个与… 目录 一、什么是监视器Monitor二、监视器的组成部分三、线程的状态转换四、总结 一、什么是监视器Monitor 在Java中监视器Monitor是用来实现线程同步的一种机制。每个Java对象都有一个与之关联的监视器线程可以通过synchronized关键字来获取和释放对象的监视器。监视器的主要作用是确保在同一时刻只有一个线程可以执行同步块或同步方法从而实现线程的互斥访问。 二、监视器的组成部分 监视器通常包含以下三个关键部分 入口集Entry List等待获取监视器锁的线程集合。所有者线程Owner Thread当前持有监视器锁的线程。等待集Wait Set调用了wait()方法并进入等待状态的线程集合。 线程等待的地方 入口集Entry List线程在尝试进入同步块或同步方法时如果无法获取监视器锁它们会进入入口集等待。这些线程处于阻塞状态等待获取监视器锁。 等待集Wait Set线程在调用wait()方法后会释放监视器锁并进入等待集。这些线程处于等待状态直到被其他线程通过notify()或notifyAll()方法唤醒。 三、线程的状态转换 线程状态转换示意图 以下是线程在不同状态之间转换的过程示意图 新建状态New线程被创建但尚未启动。可运行状态Runnable线程已经启动可以运行但不一定正在运行。阻塞状态Blocked线程在入口集中等待获取监视器锁。等待状态Waiting线程在等待集中等待其他线程通过notify()或notifyAll()唤醒。超时等待状态Timed Waiting线程在等待集中等待特定时间后被唤醒。终止状态Terminated线程已经结束执行。 示例代码解释 我们通过一个示例代码来解释线程在不同状态之间的转换 public class MonitorExample {private static final Object lock new Object();public static void main(String[] args) {Thread thread1 new Thread(() - {synchronized (lock) {try {System.out.println(Thread 1: Acquired lock, entering wait state.);lock.wait();System.out.println(Thread 1: Woken up, reacquired lock.);} catch (InterruptedException e) {Thread.currentThread().interrupt();}}});Thread thread2 new Thread(() - {synchronized (lock) {System.out.println(Thread 2: Acquired lock, notifying.);lock.notify();System.out.println(Thread 2: Notified, releasing lock.);}});thread1.start();try {Thread.sleep(100); // Ensure thread1 starts first and enters wait state} catch (InterruptedException e) {Thread.currentThread().interrupt();}thread2.start();} }过程解释 Thread 1 获取监视器锁 Thread 1 进入同步块并获取监视器锁。 调用lock.wait()方法Thread 1释放监视器锁并进入等待集。 Thread 2 获取监视器锁 Thread 2 进入同步块并获取监视器锁此时Thread 1已在等待集。 调用lock.notify()方法唤醒等待集中的一个线程即Thread 1。 Thread 2 释放监视器锁 Thread 2 退出同步块释放监视器锁。 Thread 1 重新获取监视器锁 被唤醒的Thread 1从等待集中移动到锁池重新竞争获取监视器锁。 Thread 1成功获取监视器锁后从wait()方法返回继续执行后续代码。 四、总结 监视器Monitor用于实现线程同步每个Java对象都有一个监视器。 入口集Entry List线程在尝试进入同步块或同步方法时如果无法获取监视器锁会进入入口集等待。 等待集Wait Set线程在调用wait()方法后会释放监视器锁并进入等待集等待被唤醒。 状态转换线程在不同状态之间转换包括新建、可运行、阻塞、等待、超时等待和终止状态。
http://www.w-s-a.com/news/255370/

相关文章:

  • 二级网站域名长沙企业关键词优化服务质量
  • 在家有电脑怎么做网站wordpress 入门主题
  • 什邡建设局网站sem推广是什么意思
  • 西安分类信息网站网站敏感关键词
  • 黑彩网站怎么做建设网站费用分析
  • 网站关键词选取的步骤和方法小程序商城哪家好排行榜
  • 儿童产品网站建设网站建设优化排名推广
  • 做网站的硬件无锡招标网官方网站
  • 做推送好用的网站合肥网站推广培训
  • 网站开发团队简介贵阳双龙区建设局网站
  • 新乡做网站公司哪家好wordpress侧边栏文件
  • 小白建站怎么撤销网站备案
  • 哪个网站做调查问卷赚钱短视频制作神器
  • 上海企业响应式网站建设推荐汕头网络优化排名
  • 怎么建立公司网站平台怎么将网站做成公司官网
  • 培训学校网站怎样快速建设网站模板
  • 建设电子商务网站论文云服务器安装wordpress
  • 做展板好的网站学校的网站开发过程
  • 宁波搭建网站价格西部数码网站正在建设中是什么意思
  • 吉林省建设项目招标网站苏州网络推广定制
  • 网站域名所有权证明引流推广接单
  • 做网站百度百科孟州网站建设
  • 服务网站建设企业广州模板建站系统
  • 怎么做属于自己的免费网站浏览器游戏网址
  • 上海城乡住房建设厅网站西安网站推广慧创科技
  • 做策划网站推广怎么写简历互联网公司手机网站
  • 怎么做宣传网站网站建设采购项目合同书
  • 网站的空间和域名备案做网站要会写什么
  • wap 网站源码企业网站被转做非法用途
  • 下载网站模板怎么使用做物流网站的公司