0

我有一个非常简单的任务,理论上我已经完成了:一个使用 UDP 进行通信的聊天程序。实现我们想要的任何功能都取决于我们,我会尽力自己实现它们,但我似乎很难实现核心思想:一个既是服务器又是客户端的程序。

在我所见的任何地方,我都能看到两个用于 UDP 数据报交换的独立应用程序。它总是 client.c 和 server.c,我想知道为什么。 简单的聊天协议图

这是我想出的图表。基本上,我使用状态机模型和事件来改变状态。

你能告诉我为什么我找不到一个程序的 START 状态同时是 LISTEN 和 SEND 的例子吗?我看不出为什么它不应该是可能的。

4

1 回答 1

0

我不知道你为什么找不到任何例子。在大多数拓扑中,服务器-客户端、p2p 等所有对等点都发送和接收。为什么这里是一个例子:

http://www.codeproject.com/Articles/16935/A-Chat-Application-Using-Asynchronous-UDP-sockets

于 2013-10-21T04:28:59.163 回答