返回顶部
首页 > 资讯 > 精选 >Java项目中如何等待与唤醒线程
  • 873
分享到

Java项目中如何等待与唤醒线程

java线程ava 2023-05-31 14:05:32 873人浏览 八月长安
摘要

这期内容当中小编将会给大家带来有关Java项目中如何等待与唤醒线程,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。DEMO1: wait() 与 notify()public class Test { st

这期内容当中小编将会给大家带来有关Java项目中如何等待与唤醒线程,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

DEMO1: wait() 与 notify()

public class Test { static class ThreadOne extends Thread {  private Callback mCallback;  @Override  public void run() {   work();   if (mCallback != null) {    mCallback.onResult(false);   }  }  // 耗时 3s  private void work() {   System.out.println(" 正在查询数据库 1");   long startTime = System.currentTimeMillis();   while (true) {    if (System.currentTimeMillis() - startTime < 3000) {     continue;    }    break;   }  }  public void setCallback(Callback callback) {   mCallback = callback;  }  public interface Callback {   void onResult(boolean result);  } } static class ThreadTest extends Thread {  private Object mLock = new Object();  private ThreadOne mThreadOne;  @Override  public void run() {   workOne();   System.out.println(" 根据结果继续做其他事情 ");  }  private void workOne() {   mThreadOne = new ThreadOne();   mThreadOne.setCallback(new ThreadOne.Callback() {    @Override    public void onResult(boolean result) {     System.out.println(" 查询数据库 1 结束,:" + (result &#63; " 有数据 " : " 无数据 "));     synchronized (mLock) {      mLock.notify();      System.out.println("--ThreadTest 结束等待 --");     }    }   });   mThreadOne.start();   try {    synchronized (mLock) {     System.out.println("--ThreadTest 进入等待 --");     mLock.wait();    }   } catch (InterruptedException e) {    e.printStackTrace();   }  } } public static void main(String[] var0) {  ThreadTest threadTest = new ThreadTest();  threadTest.start(); }}

--结束END--

本文标题: Java项目中如何等待与唤醒线程

本文链接: https://lsjlt.com/news/226137.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Java项目中如何等待与唤醒线程
    这期内容当中小编将会给大家带来有关Java项目中如何等待与唤醒线程,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。DEMO1: wait() 与 notify()public class Test { st...
    99+
    2023-05-31
    java 线程 ava
  • 如何唤醒与等待java中线程
    本篇文章和大家了解一下如何唤醒与等待java中线程。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。wait(), notify(), notifyAll()等方法介绍在Object.java中,定义了wait(), not...
    99+
    2023-05-31
    java 线程 ava
  • 如何在Java项目中实现多线程的阻塞与唤醒
    如何在Java项目中实现多线程的阻塞与唤醒?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。java线程的阻塞及唤醒 1. sleep() 方法: sleep(…毫...
    99+
    2023-05-31
    java 多线程 ava
  • Java多线程之等待唤醒机制及案例代码演示
    生产者和消费者(等待唤醒机制) 等待唤醒机制常见方法代码演示等待唤醒机制(阻塞队列方式实现)额外扩展 等待唤醒机制 生产者和消费者是一个十分经典的多线程协作模式 举个小栗子来说明一下消费者...
    99+
    2023-10-25
    java 多线程 等待唤醒机制 thread Runnable notify wait
  • win10待机如何远程唤醒
    这篇文章主要介绍“win10待机如何远程唤醒”,在日常操作中,相信很多人在win10待机如何远程唤醒问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”win10待机如何远程唤醒”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-07-04
  • Java多线程之线程通信生产者消费者模式及等待唤醒机制代码详解
    前言前面的例子都是多个线程在做相同的操作,比如4个线程都对共享数据做tickets–操作。大多情况下,程序中需要不同的线程做不同的事,比如一个线程对共享变量做tickets++操作,另一个线程对共享变量做tickets–操作,这就是大名鼎鼎...
    99+
    2023-05-30
    java 多线程 ava
  • Java线程中的notifyAll唤醒操作(推荐)
    注意:java中的notifyAll和notify都是唤醒线程的操作,notify只会唤醒等待池中的某一个线程,但是不确定是哪一个线程,notifyAll是针对指定对象里面的所有线程执行唤醒操作,指定对象一旦唤醒成功。则会立即加入线程的资源...
    99+
    2023-05-31
    java 线程 notifyall
  • java中的线程怎么实现等待与通知
    这篇文章给大家介绍java中的线程怎么实现等待与通知,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。关于等待/通知,要记住的关键点是:必须从同步环境内调用wait()、notify()、notifyAll()方法。线程不...
    99+
    2023-05-31
    java 线程 ava
  • Linux中无线网卡如何配置无线唤醒
    这篇文章给大家分享的是有关Linux中无线网卡如何配置无线唤醒的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。我有一台用于备份我的所有设备的网络存储(NAS)服务器。然而当我备份我的 Linux 笔记本时遇到了困难...
    99+
    2023-06-27
  • 如何守护Java项目中的线程
    如何守护Java项目中的线程?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。       守护线程并非虚拟机内部可以提供,...
    99+
    2023-05-31
    java 线程守护 ava
  • 线程池如何在Java项目中使用
    今天就跟大家聊聊有关线程池如何在Java项目中使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Java通过Executors提供四种线程池,分别为:newCachedThreadP...
    99+
    2023-05-31
    java 线程池 ava
  • 怎么理解Java线程间通信与等待/通知机制
    本篇内容主要讲解“怎么理解Java线程间通信与等待/通知机制”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么理解Java线程间通信与等待/通知机制”吧!一、概念简介1、线程通信在操作系统中,线...
    99+
    2023-06-02
  • 在java项目中如何实现同步多线程
    本篇文章给大家分享的是有关在java项目中如何实现同步多线程,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。 java多线程的同步方法实例代码先看一个段有关银行存钱的代...
    99+
    2023-05-31
    java 多线程 同步
  • 多线程并发编程如何在Java项目中实现
    本篇文章为大家展示了多线程并发编程如何在Java项目中实现 ,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。一、多线程操作系统有两个容易混淆的概念,进程和线程。进程:一个计算机程序的运行实例,包含了需...
    99+
    2023-05-31
    java 多线程 并发编程
  • Java循环屏障中CyclicBarrier如何实现多线程分段等待执行完成
    Java循环屏障中CyclicBarrier如何实现多线程分段等待执行完成,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。前言工作中是否有这样的场景,多个线程任务...
    99+
    2023-06-25
  • Java项目有中多个线程如何查找死锁
    当项目有中多个线程,如何查找死锁? 最近,在IDEA上进行多线程编程中老是在给线程加锁的时候,总是会遇到死锁问题,而当程序出现死锁问题时,编译器不能精确的显示错误的精确位置。当项目代...
    99+
    2024-04-02
  • Java项目中的线程安全问题如何解决
    这篇文章给大家介绍Java项目中的线程安全问题如何解决,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。解决方案如下:public class Demo_5 { public&nbs...
    99+
    2023-05-31
    java 线程安全 ava
  • C#如何使用Task类解决线程的等待问题
    目录使用Task类解决线程的等待问题Task类用法示例小结C#代码执行中等待10秒使用Task类解决线程的等待问题 在任何的编程语言中,面对耗时任务时,我们都会有这样的需求:让任务执...
    99+
    2024-04-02
  • 如何让主线程等待所有的子线程结束之后再执行
    本篇内容主要讲解“如何让主线程等待所有的子线程结束之后再执行”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何让主线程等待所有的子线程结束之后再执行”吧!使用T...
    99+
    2024-04-02
  • Java项目中怎么让线程休眠
    本篇文章为大家展示了Java项目中怎么让线程休眠,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。sleep()介绍sleep() 定义在Thread.java中。sleep() 的作用是让当前线程休眠...
    99+
    2023-05-31
    java 线程 ava
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作