【问题标题】:For what do I need the Socket::MSG_* constants in ruby?为什么我需要 Socket::MSG_* Ruby 中的常量?
【发布时间】:2013-01-03 17:02:59
【问题描述】:

我想开发一个通过 UDPSockets 通信的 p2p 应用程序。我刚刚开始阅读文档,我无法理解 ruby​​ 的套接字管理。

具体来说,可以将这些“标志”(正如 ruby​​-doc 所称的那样)添加到每个发送调用中。 (http://www.ruby-doc.org/stdlib-1.9.3/libdoc/socket/rdoc/UDPSocket.html#method-i-send)

但是我什么时候使用这些以及如何使用?

【问题讨论】:

    标签: ruby sockets network-programming udp


    【解决方案1】:

    您可能会知道是否需要使用它们,因为您将有一个示例或一些引用它们的文档。

    recvfrom 一起使用的一些更常见的选项是:MSG_OOB 用于处理带外数据,MSG_PEEK 用于查看传入消息而不将其出队,MSG_WAITALL 用于等待要填满的接收缓冲区。

    这些确实是非常极端的情况,因此您可能永远不会看到使用过的。

    这些标志来自Socket 所基于的低级recv 调用。

    【讨论】:

      猜你喜欢
      • 2021-01-20
      • 1970-01-01
      • 2016-07-13
      • 1970-01-01
      • 2014-07-20
      • 2015-10-04
      • 2016-03-18
      • 1970-01-01
      • 2014-12-03
      相关资源
      最近更新 更多