gpt4 book ai didi

java - 如何让 2 个线程相互通信?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:31:15 24 4
gpt4 key购买 nike

我目前正在用 Java 制作一个 IRC 机器人(我知道,那里有框架),我正试图让它连接到多个服务器。我遇到的问题不是连接部分,我只是在 x 个线程中运行我的 Connect 类。每个线程都会将机器人连接到指定的服务器/端口。现在我的问题是,当用户输出某些文本时,机器人应该向 channel 发送消息说“你输入了这个命令”(例如)。现在我希望机器人向所有服务器发送消息说“你输入了这个命令”。这只是一个例子(这就是为什么它没有多大意义)。

Connect f = new Connect(irc.freenode.net, 6667);
Thread ft = new Thread(f);
ft.start();
Connect q = new Connect(irc.quakenet.org, 6667);
Thread qt = new Thread(q);
qt.start();

现在有了上面的示例代码,我希望一个线程在键入特定文本时与另一个线程通信。像这样的东西:

if (lineReader.substring(lineReader.indexOf(":"), lineReader.length()).equals("hello")) {
message both servers "Hello World!"
}

如果有人能提供帮助,我将不胜感激。谢谢!

最佳答案

我认为一个简单的方法是 Observer pattern每个线程都知道所有其他线程

关于java - 如何让 2 个线程相互通信?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4053982/

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