gpt4 book ai didi

java - 通知一系列事件完成的监听器(启动同步服务)

转载 作者:行者123 更新时间:2023-12-01 15:10:46 25 4
gpt4 key购买 nike

我有三个类(class),从这三个类(class)开始我提供三项服务。这三个服务将同时启动。

我在每个服务类中都有回调方法来了解该特定服务是否已启动。

尽管这三个服务是同时启动的,但没有先后顺序。

有人可以告诉我最好的使用方法,以便我在上次服务开始时收到通知吗?

感谢任何帮助。

最佳答案

我会这样做:

public class CounterAndNotifier
{
private int counter = 0;
private int count;
private Runnable runnable;

public CounterAndNotifier(int count, Runnable runnable)
{
this.count = count;
this.runnable = runnable;
}

public synchronized void incrementCounter()
{
counter++;
if (counter == count) {
runnable.run();
}
}
}
  1. 创建一个采用 Runnable 的类,一旦所有三个服务启动,就应该通知该类。
  2. 此类维护一个计数器和一个用于递增计数器的同步方法。
  3. 一旦计数达到 3,递增计数器的方法就会调用 Runnable.run()
  4. 创建此类的一个对象,并将其传递给三个服务,以便在服务完成启动并运行后调用 incrementCounter() 方法。

希望这有帮助。

关于java - 通知一系列事件完成的监听器(启动同步服务),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12392553/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com