En tråd är en oberoende verkställande bit kod . Ett löpande program är egentligen en tråd , men programmet kan faktiskt starta och stoppa trådar av sina egna . Detta är hur ett program kan leka en långvarig process , men ändå svara på användarens önskemål eller göra annan bearbetning. Innan en tråd kan stoppas i Visual Basic det måste startas
1
Skapa ett nytt projekt i Visual Basic baserad på Windows Formulärmallen .
2 .
Lägg till två knappar i formuläret. Namn ett " btnStart " med texten " Start " och den andra " btnStop "och texten " Stop . "
3 .
Lägg till " Import System. Threading " överst i koden filen .
4 .
Dubbelklicka på " Start "och lägg till följande kod :
Private Sub btnStart_Click ( ByVal avsändaren som System. Object , ByVal e Som System. EventArgs ) Hanterar btnStart. Click
t=nytt inlägg ( AddressOf Me. BackgroundProcess )
t. Start ( )
End Sub
<. br > 5
deklarera variabeln "t " så här i klassen nivå :
Dim t Som tråd
6 .
Lägg till följande kod för " Stop " knappen :
Private Sub btnStop_Click ( ByVal avsändaren som System . Objekt , ByVal e Som System. EventArgs ) hanterar btnStop. Click
t. Abort ( )
End Sub
7 .
Skapa sub rutin som ska köras som tråden , i detta fall kallas " BackgroundProcess : "
Private Sub BackgroundProcess ( )
"göra någonting länge här gillar beräkna Pi ut till en miljard siffror .
göra medan Sanna
Loop
End Sub
Självklart kommer du vill att göra något användbart i denna rutin , inte bara en oändlig loop.
8 .
Kör programmet i Visual Basic Editor. Tryck på "Start". Det brukar vara något som uppenbarligen händer , men försöker stänga programmet . Märker det inte ut hela vägen tillbaka till redigering i Visual Studio IDE . Tryck på " Stop debugging " -knappen i knappraden av IDE för att avsluta mätningen program från att köras.
9 .
Kör programmet igen och tryck på "Start " knappen för att starta tråden , klicka sedan på " Stop " knappen i formuläret för att stoppa tråden . Observera att när programmets form är stängd , går IDE tillbaka till redigeringsläge som kördes gjorde avsluta .
Previous:nothing Next:vad är skillnaden mellan personsökning & segmentering ?