方法
GIoSocketjoin_multicast_group
自:2.32
声明 [源代码]
gboolean
g_socket_join_multicast_group (
GSocket* socket,
GInetAddress* group,
gboolean source_specific,
const gchar* iface,
GError** error
)
描述 [源代码]
将 socket
注册以接收发送到 group
的多播消息。 socket
必须是一个 G_SOCKET_TYPE_DATAGRAM
套接字,并且必须已使用 g_socket_bind() 绑定到适当的接口和端口号。
如果 iface
为 NULL
,系统将根据 group
自动选择要绑定的接口。
如果 source_specific
为 TRUE
,则使用 RFC 4604 中定义的源特定多播。注意,在较旧的平台上,这可能会失败并返回 G_IO_ERROR_NOT_SUPPORTED
错误。
要绑定到特定的源多播地址,请使用g_socket_join_multicast_group_ssm()
。
自:2.32 版本起可用
参数
group
-
类型:
GInetAddress
指定要加入的组地址的
GInetAddress
。数据由方法调用者拥有。 source_specific
-
类型:
gboolean
如果使用特定源多播,则为
TRUE
。 iface
-
类型:
const gchar*
要使用的接口名称,或
NULL
。该参数可为 NULL
。数据由方法调用者拥有。 该值是NUL终止的UTF-8字符串。 error
-
类型:
GError **
一个可恢复错误的返回位置。
该参数可为 NULL
。如果返回位置不是 NULL
,则必须将其初始化为空的GError*
。如果没有错误,该方法将初始化该参数为 NULL
。如果出现错误,则将参数设置为新分配的 GError
;调用者将拥有数据所有权,并负责释放它。