Socket.MulticastLoopback 属性

定义

获取或设置一个值,该值指定传出的多路广播数据包是否传递到发送应用程序。

public:
 property bool MulticastLoopback { bool get(); void set(bool value); };
public bool MulticastLoopback { get; set; }
member this.MulticastLoopback : bool with get, set
Public Property MulticastLoopback As Boolean

属性值

如果 Socket 接收传出的多路广播数据包,则为 true;否则为 false

例外

尝试访问套接字时出错。

示例

下面的代码示例演示如何使用 MulticastLoopback 属性。

static void ConfigureUdpSocket(Socket^ udpSocket)
{

    // Set the Don't Fragment flag.
    udpSocket->DontFragment = true;
     
    // Enable broadcast.
    udpSocket->EnableBroadcast = true;
     
    // Disable multicast loopback.
    udpSocket->MulticastLoopback = false;
    Console::WriteLine("Udp Socket configured:");
    Console::WriteLine("  DontFragment {0}", 
        udpSocket->DontFragment);
    Console::WriteLine("  EnableBroadcast {0}", 
        udpSocket->EnableBroadcast);
    Console::WriteLine("  MulticastLoopback {0}", 
        udpSocket->MulticastLoopback);
}
static void ConfigureUdpSocket(Socket udpSocket)
{
    // set the Don't Fragment flag.
    udpSocket.DontFragment = true;
    // Enable broadcast.
    udpSocket.EnableBroadcast = true;

    // Disable multicast loopback.
    udpSocket.MulticastLoopback = false;

    Console.WriteLine("Udp Socket configured:");
    Console.WriteLine($"  DontFragment {udpSocket.DontFragment}");
    Console.WriteLine($"  EnableBroadcast {udpSocket.EnableBroadcast}");
    Console.WriteLine($"  MulticastLoopback {udpSocket.MulticastLoopback}");
}

注解

多播是 Internet 上多对多通信的可缩放方法。 进程订阅多播地址;然后,订阅进程发送的任何数据包将由订阅到该多播地址的每个其他进程接收。

在 TCP) 套接字 (传输控制协议上设置此属性不起作用。

适用于