C# 什么';s Socket.Connect和Socket.BeginConnect之间的不同
我遇到了一个非常奇怪的问题:当我在unity3d webplayer中使用Socket.Connect()时,遇到了“System.Security.SecurityException:无法连接,因为找不到有效的跨域策略”,但Socket.BeginConnect()没有问题,那么有什么区别呢?Socket.Connect: Socket.BeginConnect 由于文档状态Connect是同步的,这意味着它将阻止当前线程,直到建立连接为止 BeginConnect方法是异步的,这意味着它将在不同的线程中进行连接,并在连接完成时返回通知。它不会阻止您当前的调用线程。你需要打电话给EndConnect Socket.ConnectAsync将SocketAsyncEventArgs作为参数提供,与BeginConnect提供的3个参数相比,它包含更多的信息。我还知道,ConnectAsync比BeginConnect引入得晚,解决了一些与超时相关的问题(现在记不起讨论的来源)。尽可能使用ConnectAsync(尽管它需要min.NET2.0SP1) Silverlight中不支持BeginConnect方法(仅支持ConnectAsync),因此如果您打算开发客户端Silverlight应用程序,这可能是另一个问题。Socket.Connect: Socket.BeginConnect 由于文档状态Connect是同步的,这意味着它将阻止当前线程,直到建立连接为止 BeginConnect方法是异步的,这意味着它将在不同的线程中进行连接,并在连接完成时返回通知。它不会阻止您当前的调用线程。你需要打电话给EndConnect Socket.ConnectAsync将SocketAsyncEventArgs作为参数提供,与BeginConnect提供的3个参数相比,它包含更多的信息。我还知道,ConnectAsync比BeginConnect引入得晚,解决了一些与超时相关的问题(现在记不起讨论的来源)。尽可能使用ConnectAsync(尽管它需要min.NET2.0SP1) Silverlight中不支持BeginConnect方法(仅支持ConnectAsync),因此如果您打算开发客户端Silverlight应用程序,这可能是另一个问题C# 什么';s Socket.Connect和Socket.BeginConnect之间的不同,c#,sockets,unity3d,C#,Sockets,Unity3d,我遇到了一个非常奇怪的问题:当我在unity3d webplayer中使用Socket.Connect()时,遇到了“System.Security.SecurityException:无法连接,因为找不到有效的跨域策略”,但Socket.BeginConnect()没有问题,那么有什么区别呢?Socket.Connect: Socket.BeginConnect 由于文档状态Connect是同步的,这意味着它将阻止当前线程,直到建立连接为止 BeginConnect方法是异步的,这意味着它将在