C# 如何在windows Phone 7.1中实现等待功能
我想使用客户端的Ip地址连接到服务器。为了获得我正在使用的服务器的Ip地址,下面的代码,它正确地检测到了服务器,但我想在事件处理程序设置的C# 如何在windows Phone 7.1中实现等待功能,c#,silverlight,windows-phone-7,windows-phone-7.1,C#,Silverlight,Windows Phone 7,Windows Phone 7.1,我想使用客户端的Ip地址连接到服务器。为了获得我正在使用的服务器的Ip地址,下面的代码,它正确地检测到了服务器,但我想在事件处理程序设置的HostEndPoint变量之后执行一些其他功能,直到我需要等待如何实现它。。下面的代码用来扫描是正确的方式吗?如果不是,怎么做 谢谢 int startIp = 0; int EndIp = 255; int HostPort = 4678; string = ipPrefix = "192.168.1."; EndPoint HostEndPoint;
HostEndPoint
变量之后执行一些其他功能,直到我需要等待如何实现它。。下面的代码用来扫描是正确的方式吗?如果不是,怎么做
谢谢
int startIp = 0;
int EndIp = 255;
int HostPort = 4678;
string = ipPrefix = "192.168.1.";
EndPoint HostEndPoint;
private void ScanHosts()
{
Socket clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
for (startIP = 0; startIP <= endIP; startIP++)
{
DnsEndPoint endPoint = new DnsEndPoint(ipPrefix + startIP.ToString(), HostPort);
try
{
SocketAsyncEventArgs socketEventArgs = new SocketAsyncEventArgs();
socketEventArgs.RemoteEndPoint = endPoint;
socketEventArgs.UserToken = clientSocket;
socketEventArgs.Completed += new EventHandler<SocketAsyncEventArgs>(socketEventArgs_Connected);
clientSocket.ConnectAsync(socketEventArgs);
}
catch { }
}
}
private void socketEventArgs_Connected(object sender, SocketAsyncEventArgs e)
{
if (e.SocketError == SocketError.Success)
{
HostEndPoint = e.RemoteEndPoint;
}
}
int startIp=0;
int EndIp=255;
int HostPort=4678;
string=ipPrefix=“192.168.1。”;
终点和终点;
私有空扫描主机()
{
Socket clientSocket=新套接字(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
对于(startIP=0;startIP,您可以使用AutoResetEvent。FE我的用法:
AutoResetEvent autoResetLoadDiscTitleAndPersonalDataById = new AutoResetEvent(false);
DataService.LoadDiscTitleAndPersonalDataById(titleToSync.id_on_server, titleInfoXML =>
{
Title TitleInfo = new Title(titleInfoXML);
TitleInfo.UpdateToDb();
autoResetLoadDiscTitleAndPersonalDataById.Set();
});
autoResetLoadDiscTitleAndPersonalDataById.WaitOne();