sockets - 如何取消订阅 DatagramSocket MessageReceived 事件

标签 sockets windows-runtime udp unsubscribe

我正在尝试在绑定(bind)的 UDP 套接字(DatagramSocket)上取消订阅 MessageReceived 并获取异常。
我就是这样注册的:

    EventRegistrationToken myRegToken;
    myRegToken = (mySocket->MessageReceived += ref new TypedEventHandler<DatagramSocket^, 
          DatagramSocketMessageReceivedEventArgs^>(listenerContext, &ListenerContext::OnMessage));

这就是我取消注册的方式:
mySocket->MessageReceived -= myRegToken;

我得到一个异常(exception):在意外的时间调用了一个方法。

我做错了什么?
谢谢。

最佳答案

不走运,唯一的解决方案似乎是用 mySocket = nullptr; 删除 mySocket并在需要时重新创建它

关于sockets - 如何取消订阅 DatagramSocket MessageReceived 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16147904/

相关文章:

sockets - 在 child 中接收事件

sockets - 在后端订阅 Phoenix channel (不是 channel.join())

c - 通过 Linux 套接字发送文件描述符

c - RTP 丢包问题(?)

php - 在两个PHP脚本之间传递实时套接字

c# - 使用 WinRT 接受无效的 SSL 证书

timer - 如何在 Metro Style App 中实现计时器

http - 如何获取 HTTP 响应正文,即使用 BackgroundUploader 下载

ios - 接收 UDP 消息

Android令人沮丧的网络错误