加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java-如何不断等待事件发生

发布时间:2020-12-14 19:19:47 所属栏目:Java 来源:网络整理
导读:我正在创建一个应用程序,其中有多个阶段 每个阶段都会在Amazon Simple Work Flow(SWF)中将消息发送到我的队列应用程序应为每个收到的消息启动一个新线程. 如何实现等待部分 以便应用程序不断扫描队列中的新消息并在收到消息时采取措施? 最佳答案 你问的是一

我正在创建一个应用程序,其中有多个阶段 – 每个阶段都会在Amazon Simple Work Flow(SWF)中将消息发送到我的队列…应用程序应为每个收到的消息启动一个新线程.

如何实现等待部分 – 以便应用程序不断扫描队列中的新消息并在收到消息时采取措施?

最佳答案
你问的是一个生产者 – 消费者模型
你可以读到它here

基本理念:网站是生产者,您作为客户是消费者.

你等待()直到听众收到一条消息然后notifAll()

    class WaitForAmazon{
    private boolean available = false;
    private int contents;

    public synchronized int consumer() {
        while (available == false) {
            try {
                wait();
            } catch (InterruptedException e) { }
        }
        available = false;
        notifyAll();
        return contents;
    }

    public synchronized void producer(int value) {
        while (available == true) {
            try {
                wait();
            } catch (InterruptedException e) { }
        }
        contents = value;
        available = true;
        notifyAll();
    }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读