我在客户端用 j2me 编写游戏,连接到用 java 编写的服务器。该游戏将具有聊天功能,但作为次要功能。
对于连接到服务器的每个 midlet,都会生成一个服务器游戏线程。这些线程在它们之间进行对话,以便它们可以同步并轮流写入服务器中的一系列配置文件。现在,如果在其中一个 midlet 中写入聊天消息,它会被传递到管理套接字通信并发送到服务器的客户端线程。在服务器中,通知同一游戏的所有其他玩家,并将聊天消息转发给所有其他玩家。因此,每个服务器线程(但最初发送消息的用户)都将消息发送到其对应的客户端线程。
我的问题来了。我如何向每个 midlet 发出信号,以便它知道有新的传入消息?
我想过创建一个线程来轮询客户端通信线程以查看是否有任何新消息。但是,我怎么能从 midlet 中知道而不中途打断呢?理想情况下,我想直接读取客户端通信线程中的字符串,但该字符串可能正在写入,因此我需要一个线程来访问它并与之同步。
你们中的任何人都可以伸出援助之手吗?我真的不知道如何进行,看起来这应该很简单......
提前致谢