3
Bitte beachten Sie den Code unten:Webseite nie fertig geladen asynchron
Public Shared Async Sub AsyncMain()
Dim a As AsyncronousTest = New AsyncronousTest
Dim task As Task = a.LoadWebpage()
Do While 1 = 1
If a.bool = True Then
Exit Do
End If
Loop
MsgBox("test")
End Sub
Public Class AsyncronousTest
Public bool As Boolean = False
Public Sub Callback()
bool = True
End Sub
Public Async Function LoadWebpage() As Task(Of Integer)
Dim webC As WebClient = New WebClient()
Dim newUri As Uri = New Uri("http://webpagetocache")
Dim task1 As Task = webC.DownloadStringTaskAsync(newUri)
Await task1
Callback()
Return 1
End Function
End Class
msgbox("test")
nie erreicht wird. Warum?
Der Zweck ist, eine Webseite über Nacht zu laden, damit sie mit asp.net zwischengespeichert werden kann.
Sie sind mit einem Debugger durch Ihren Code gegangen? Platzieren Sie einen Haltepunkt in der Zeile, um zu sehen, ob er getroffen wurde, und aktivieren Sie außerdem das Direktfenster (wenn Sie Visual Studio verwenden), sodass keine Ausnahme stillschweigend ausgelöst wird. –
Muss es asynchron sein, wenn Sie nur die Seite laden? Warum nicht einfach einen normalen Non-Sync-Weg verwenden? – Jeremy
LoadWebPage gibt eine Ganzzahl (1) zurück, aber der Rückgabetyp lautet Task (Of Integer). Die Rückkehr scheitert vielleicht? – Jeremy