From b08469963d796ac95eb074de31ba1c36a9451be7 Mon Sep 17 00:00:00 2001 From: lxy <237809796@qq.com> Date: Mon, 1 Feb 2021 19:40:22 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=EF=BC=9Adelay=20=E5=BB=B6?= =?UTF-8?q?=E6=97=B6=E4=BA=8B=E4=BB=B6api?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/zdemo/zdb/ZHubClient.java | 4 ++++ test/com/zdemo/test/AppTest.java | 10 +++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/com/zdemo/zdb/ZHubClient.java b/src/com/zdemo/zdb/ZHubClient.java index 1754921..ecada2d 100644 --- a/src/com/zdemo/zdb/ZHubClient.java +++ b/src/com/zdemo/zdb/ZHubClient.java @@ -277,6 +277,10 @@ public abstract class ZHubClient extends AbstractConsumer implements IConsumer, send("broadcast", topic, toStr(v)); } + public void delay(String topic, V v, int delay) { + send("delay", topic, toStr(v), String.valueOf(delay)); + } + @Override public void subscribe(String topic, Consumer consumer) { addEventType(EventType.of(topic, consumer)); diff --git a/test/com/zdemo/test/AppTest.java b/test/com/zdemo/test/AppTest.java index 9728d32..412120d 100644 --- a/test/com/zdemo/test/AppTest.java +++ b/test/com/zdemo/test/AppTest.java @@ -10,11 +10,13 @@ import java.util.List; import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.TimeUnit; import java.util.function.Function; +import java.util.logging.Logger; /** * 消息发布订阅测试 */ public class AppTest { + Logger logger = Logger.getLogger(""); @Test public void runConsumer() { @@ -22,8 +24,8 @@ public class AppTest { //启动并开启消费监听 MyConsumer consumer = Application.singleton(MyConsumer.class); - consumer.subscribe("a-1", str -> { - System.out.println("我收到了消息 a 事件:" + str); + consumer.subscribe("a", str -> { + logger.info("我收到了消息 a 事件:" + str); }); consumer.timer("a", () -> { @@ -38,7 +40,9 @@ public class AppTest { consumer.timer("b", () -> { System.out.println(Utility.now() + " ----------------- timer b 执行了"); }); - + consumer.delay("a", "1", 3000); + consumer.delay("a", "1", 5000); + logger.info("----"); Thread.sleep(60_000 * 60); } catch (Exception e) {