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

书画工作室网站模板网站建设网站建设催款函

书画工作室网站模板网站建设,网站建设催款函,綦江建设银行网站,网站建设js是什么线程调度 线程状态#xff1a;状态切换阻塞与唤醒阻塞唤醒 wait 与 sleep创建线程方式 线程是cpu任务调度的最小执行单位#xff0c;每个线程拥有自己独立的程序计数器、虚拟机栈、本地方法栈。 线程状态#xff1a; 线程状态包括#xff1a;创建、就绪、运行、阻塞、死亡… 线程调度 线程状态状态切换阻塞与唤醒阻塞唤醒 wait 与 sleep创建线程方式 线程是cpu任务调度的最小执行单位每个线程拥有自己独立的程序计数器、虚拟机栈、本地方法栈。 线程状态 线程状态包括创建、就绪、运行、阻塞、死亡。 状态切换 方法作用区别start启动线程由虚拟机自动调度执行run()方法线程处于就绪状态run线程逻辑代码块处理JVM调度执行线程处于运行状态sleep让当前正在执行的线程休眠(暂停执行)不释放锁wait使得当前线程等待释放同步锁notify唤醒在此对象监视器上等待的单个线程唤醒单个线程notifyAll唤醒在此对象监视器上等待的所有线程唤醒多个线程yield停止当前线程让同等优先权的线程运行用Thread类调用join使当前线程停下来等待直至另一个调用join方法的线程终止用线程对象调用 线程状态切换 阻塞与唤醒 阻塞 这三个方法的调用都会使当前线程阻塞。该线程将会被放置到对该Object的请求等待队列中然后让出当前对Object所拥有的所有的同步请求。线程会一直暂停所有线程调度直到下面其中一种情况发生 其他线程调用了该 Object 的 notify 方法而该线程刚好是那个被唤醒的线程 其他线程调用了该 Object 的 notifyAll 方法。 唤醒 线程将会从等待队列中移除重新成为可调度线程。 它会与其他线程以常规的方式竞争对象同步请求。 一旦它重新获得对象的同步请求所有之前的请求状态都会恢复也就是线程调用 wait 的地方的状态。 线程将会在之前调用 wait 的地方*继续运行下去。 由于 wait() 属于 Object 方法调用之后会强制释放当前对象锁所以在 wait() 调用时必须拿到当前对象的监视器 monitor 对象。因此wait() 方法在同步方法/代码块中调用。 wait 与 sleep wait 方法必须在 synchronized 保护的代码中使用而 sleep 方法并没有这个要求。wait 方法会主动释放 monitor 锁在同步代码中执行 sleep 方法时并不会释放 monitor 锁。wait 方法意味着永久等待直到被中断或被唤醒才能恢复不会主动恢复sleep 方法中会定义一个时间时间到期后会主动恢复。wait/notify 是 Object 类的方法而 sleep 是 Thread 类的方法。 创建线程方式 1.实现 Runnable 接口优先使用 public class RunnableThread implements Runnable { Override public void run() {System.out.println(实现Runnable接口实现线程);} }2.实现Callable接口有返回值可抛出异常 class CallableTask implements CallableInteger {Override public Integer call() throws Exception { return new Random().nextInt();} }3.继承Thread类java不支持多继承 public class ExtendsThread extends Thread { Override public void run() {System.out.println(用Thread类实现线程);} }4.使用线程池底层都是实现run方法 static class DefaultThreadFactory implements ThreadFactory { DefaultThreadFactory() { SecurityManager s System.getSecurityManager(); group (s ! null) ? s.getThreadGroup() : Thread.currentThread().getThreadGroup(); namePrefix pool- poolNumber.getAndIncrement() -thread-; } public Thread newThread(Runnable r) { Thread t new Thread(group, r,namePrefix threadNumber.getAndIncrement(),0); if (t.isDaemon()) t.setDaemon(false); //是否守护线程 if (t.getPriority() ! Thread.NORM_PRIORITY) t.setPriority(Thread.NORM_PRIORITY); //线程优先级 return t; } }原文https://mp.weixin.qq.com/s/IVgGXQKU1QiT1ToN2wXHJg
http://www.zqtcl.cn/news/282172/

相关文章:

  • 网站不同颜色网站无障碍的建设方面空缺
  • 手机网站织梦模板it初学者做网站
  • asp做的网站怎么发布企业黄页网站源码
  • 在云服务器上搭建网站云端视差wordpress企业主题破解版
  • 英德市住房城乡建设网站图片设计公司
  • 网站建设分金手指专业十七wordpress 审核
  • 怎么欣赏一个网站设计图网站传送门怎么做
  • 网站有什么组成上海做推广网站
  • 网站上传大马后怎么做管理咨询公司口号
  • 网站集约整合建设交流雅虎网站提交入口
  • 网站安全建设必要性网站登录页面
  • 鄂州网站推广做区块链在哪个网站
  • 网站什么内容网站安全性设计
  • 免费动态域名申请seo发布网站
  • 软件毕设代做网站广告设计公司资质
  • 织梦网站模板如何安装网页设计教程心得体会
  • 网站开发 男生网站二维码怎么做的
  • net网站开发教程网站防御怎么做
  • 手机网站设计只选亿企邦哪个选项不属于网络营销的特点
  • 繁昌网站建设如何用易语言做网站
  • 电子商务网站建设财务分析建立网站方法
  • 大专学网站开发wordpress显示数据库请求
  • 诸暨网站制作设计公众号文章怎么导入到wordpress
  • 网站死链怎么办青岛网站制作企业
  • 已经有域名 怎么修改网站网站推广找客户
  • 网站的制作建站人增加网站流量
  • 向国旗致敬做时代新人网站广州网站建设公司排名
  • 阿里云域名怎么做网站对网站进行seo优化
  • 响应式网站建设合同11月将现新冠感染高峰
  • 做网站客户一般会问什么问题百度云网盘资源分享网站