java - Java 中一个函数等待另一个函数

标签 java

我不知道这种情况是否可能,也不知道我应该怎么做才能实现我的需求。我有一个名为 A 的类。在 A 类中,我有 02 个方法(m1 和 m2)和 01 个线程。该线程将负责监听套接字连接以获取任何传入消息。如果有消息到达,线程就会调用m1方法来处理消息。线程在类实例化时启动。


然后我有方法 m2,它负责将消息发送到套接字(线程正在监听的同一套接字)。每次方法 m2 向套接字发送消息时,都会有来自套接字的响应消息。我没有将代码实现为在发送消息后立即监听套接字,因为套接字有时也可能发送随机消息。


我的问题是,有没有可能的方法,当我的方法 m2 发送消息时,它会等到方法 m1 (由线程调用)完成后再退出?


非常感谢。

最佳答案

您可以为此使用等待/通知方法。您需要一些共同对象作为锁。查看https://docs.oracle.com/javase/tutorial/essential/concurrency/guardmeth.html了解更多信息。

关于java - Java 中一个函数等待另一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29303001/

相关文章:

java - 查找列表中的最大项目

java - 不使用 "clone"复制堆栈或队列

java - 如何将java输出作为matlab变量传递?

Java SwingWorker - 使用发布/处理更新 EDT 中的 TextArea?

java - 一个 JUnit 如何测试交互式的、基于文本的 Java 应用程序?

java - 如何关闭用户 session /身份验证。在 Spring OAuth2 中为用户/客户端发送访问 token 后的上下文

java - Procrun 日志 "missing Service ImageFile"(错误代码 1)

java - 光滑网格 |逃离太空|格式化程序

java - 使用模板创建 PDF 文件

java - 如何处理 Selenium NoSuchElementException