套接字数据发送器c ++

时间:2015-08-20 13:24:08

标签: c++ multithreading sockets

我遇到线程和套接字的同步问题。我需要一个线程来重新接收套接字上的传入连接(并记住要响应的客户端数据)和其他线程来设置帧并将当前帧发送到列出的客户端。所以我想知道是否有可能(有点)将我的数据帧放入服务器套接字,这样每个人都可以在没有服务器知道的情况下从套接字读取当前帧。

服务器只会使用一些数据向其套接字发送垃圾邮件,客户端将在没有服这可能吗?如何?

我目前这样做很混乱我不喜欢的方式:

  • 服务器正在一个线程上侦听传入传输,并在收到此类传输后,将客户端数据添加到列表中。
  • 其他线程服务器上的
  • 正在从列表中向所有客户端发送数据。

编辑:

我想将数据发送到某种允许客户端读取的缓冲区。 (客户端不必读取服务器发送的所有消息,只有客户端请求时包含的一个缓冲区),我不希望服务器甚至注意到客户端正在从缓冲区读取(如果可能)。

现在使用uniqe_lock

同步线程

1 个答案:

答案 0 :(得分:0)

您所描述的内容可能是MultiCast。具体而言,IP MultiCast(我认为)。

搜索会找到许多有用的资源。 This one看起来很简洁,并包含编码示例(虽然我不确定它当前有多少)。

如果您只是传输到局域网,那么广播也会起作用。