我有两个用 Java 编写的即时消息程序设计
第一个想法使用 2 个单独的线程。第一个线程忽略 gui 并通过写入阻塞套接字发送即时消息数据。第二个线程使用另一个阻塞套接字来监视来自朋友的传入数据包。我不确定使用线程是否是解决此问题的最佳方法,但我发现它比使用非阻塞套接字通道更容易处理。
我的第二种设计是在一个线程中使用非阻塞套接字通道,它偶尔会检查是否有传入或传出数据。这种设计的好处是我不必担心线程之间的资源共享,但我不确定它是否更有效。
老实说,我真正关心的只是制作一个运行平稳高效的程序。你认为什么是更有效和更容易构建的设计?我只是在玩,所以除了我的感觉告诉我之外,我没有构建高效和强大的客户端/服务器程序的经验。