SilverLight 套接字问题

发布于 2024-11-12 18:37:02 字数 594 浏览 0 评论 0原文

我正在尝试编写一个 silverlight 应用程序,套接字可以连接到 127.0.0.1:4505 但 arg.completed 事件不起作用

arg.RemoteEndPoint = new IPEndPoint(IPAddress.Loopback, 4505);
            arg.UserToken = sck;
            arg.Completed += new EventHandler<SocketAsyncEventArgs>(arg_Completed);
            sck.ConnectAsync(arg);

void arg_Completed(object sender, SocketAsyncEventArgs e)
        {
            label1.Content = "Durum!";
            if (e.LastOperation == SocketAsyncOperation.Connect)
            {
                label1.Content = "Bağlandı!";
            }          
        }

I'm trying write a silverlight application, socket can connect to 127.0.0.1:4505 but arg.completed event doesn't work

arg.RemoteEndPoint = new IPEndPoint(IPAddress.Loopback, 4505);
            arg.UserToken = sck;
            arg.Completed += new EventHandler<SocketAsyncEventArgs>(arg_Completed);
            sck.ConnectAsync(arg);

void arg_Completed(object sender, SocketAsyncEventArgs e)
        {
            label1.Content = "Durum!";
            if (e.LastOperation == SocketAsyncOperation.Connect)
            {
                label1.Content = "Bağlandı!";
            }          
        }

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

握住我的手 2024-11-19 18:37:02

您是否考虑过 ConnectAsync 可能无法异步完成。 此处阅读其文档。

您应该测试从 ConnectAsync 返回的布尔值,如果为 true,则完成的事件将触发,如果不是,则操作同步完成,并且 ConnectAsync > 不会着火。您使用本地 127.0.0.01 的事实增加了同步完成的可能性。

在同步连接上,您传递到调用中的 args 对象将相应地发生变化。

Have you considered that ConnectAsync may not be completing asynchronously. Have a read of its documentation here.

You should be testing the returned boolean value from ConnectAsync, if its true then the completed event will fire, if not then the operation completed synchronously and ConnectAsync will not fire. The fact that you are using the local 127.0.0.01 increases the likelyhood for a synchronous completion.

On a synchronous connection the args object you passed into the call will have been mutated accordingly.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文