0

一个java程序可以同时作为客户端和服务器运行吗?我尝试过实现线程,但我遇到了竞争条件问题。我应该坚持还是有更简单的解决方案?

该程序用于演示目的,因此每次运行程序时,客户端和服务器的用户输入将是相同的字符串。即客户端:“你好服务器”服务器:“你好客户端”客户端“再见服务器”服务器:“再见客户端”。

4

2 回答 2

0

一个java程序可以同时作为客户端和服务器运行吗?

答案是肯定的,您可以拥有一个具有两个线程作为客户端和服务器的单个程序。现实世界的实现也是如此。对于点对点通信,使用类似的方法,例如用 java 编写的 SIP 端点。

于 2013-09-29T06:51:56.730 回答
0

启动程序两次:一次作为客户端,一次作为服务器。可以使用命令行开关进行区分。这样,客户端和服务器在不同的进程中运行,从而防止了由于并发内存访问而导致的竞争条件。

于 2013-09-29T06:58:03.943 回答