【问题标题】:Client and server communication in c for linux operating systemlinux操作系统的c中的客户端和服务器通信
【发布时间】:2014-02-28 18:15:10
【问题描述】:
  1. 客户端将数据发送到服务器
  2. 服务器正在从客户端接收数据
  3. 服务器正在向客户端发送响应

  1. client 是我项目中使用的工具(所以我不必编写任何代码)
  2. 我已经对 udp 通信进行了编码,以在客户端和服务器(2 和 3)之间发送和接收数据。

我正在使用 udp 进行客户端和服务器之间的通信

每当我们从客户端收到数据(这里的数据是命令)时 - 必须在服务器中创建一个新的操作系统任务(我创建了 2 毫秒、10 毫秒和 100 毫秒的三个任务)。这 任务必须调用 API Xcp_CmdProcessor() 以允许服务器处理 来自客户端的命令(数据)默认为 10 毫秒 配置。在处理命令的过程中,不应中断其他功能,如接收数据或发送数据。

如何将创建的操作系统任务与从客户端收到的数据联系起来??

【问题讨论】:

    标签: c linux sockets operating-system client-server


    【解决方案1】:

    如果我理解正确,让我试着回答一下。

    您可以为您收到的每个客户端请求创建单独的command processing threads 以及一些client 特定数据,以便稍后在线程完成处理时识别客户端。大家可以看看POSIX线程编程教程。

    【讨论】:

    • 一个独立的任务创建,让你的主线程持续监听新的客户端请求,只能使用两种方式来实现:为每个新请求生成一个process,或者创建一个单独的@ 987654325@。维护和创建thread 所需的开销更少,效率更高。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多