VB.Net by API/System/AsyncCallback
AsyncCallback.IsCompleted
<source lang="vbnet"> Imports System.Net Imports System.Net.Sockets
Public Class Tester
Public Shared Sub Main Dim myThread As Threading.Thread myThread = New Threading.Thread(AddressOf BeginResolveIP) myThread.Start() End Sub Private Shared Sub BeginResolveIP() Try Dim myAsyncCallback As New AsyncCallback(AddressOf GetIPList)
Dim myIAsyncResult As IAsyncResult = Dns.BeginResolve("www.google.ru", myAsyncCallback, Nothing) Do While Not myIAsyncResult.IsCompleted Threading.Thread.Sleep(10) Loop Threading.Thread.Sleep(2000) Catch ex As SocketException Console.WriteLine(ex.Message) End Try End Sub Private Shared Sub GetIPList(ByVal pIAsyncResult As IAsyncResult) Dim myIPHostEntry As IPHostEntry myIPHostEntry = Dns.EndResolve(pIAsyncResult) Dim myIPAddresses() As IPAddress = myIPHostEntry.AddressList Dim myIPAddress As IPAddress For Each myIPAddress In myIPAddresses Console.WriteLine(myIPAddress.ToString) Next End Sub
End Class
</source>