Innehåll
När ett datorprogram behöver köra en lång subrutin, är det bäst att köra det som en bakgrundsprocess. En bakgrundsprocess har vanligtvis inte samma prioritet som förgrunden, så det går långsammare. Subrutiner kan innehålla kontroll och nedladdning av uppdateringar, nedladdning av loggfiler eller långa beräkningar.
vägbeskrivning
Subrutiner i bakgrunden är bra för långa processer (Kutay Tanir / Photodisc / Getty Images)-
Kör Visual Basic och skapa ett nytt projekt av typen Windows-formulär.
-
Lägg in den första raden i filkoden:
"Import System.Threading"
Och lägg till:
"Dim t som tråd"
till huvuddelen av formuläret.
-
Lägg till en knapp i formuläret och byt namn till "btnStart". Ändra texten på knappen till "Starta bakgrundsprocessen".
-
Lägg till följande kod för åtgärden på knappen "btnStart":
Privat Sub btnStart_Click (ByVal-avsändare Som System.Object, ByVal och As System.EventArgs) Hanterar btnStart.Click t = Ny tråd (AddressOf Me.BackgroundProcess) t.Priority = ThreadPriority.BelowNormal 'Detta ger subrutinen ännu mindre prioritet t .Start () End Sub
Denna rutin startar en process i bakgrunden och ger den en lägre prioritet än normalt, så att den går långsammare och inte stör användarens navigationselement.
-
Lägg till följande underrutin för att köra i bakgrunden:
Privat Sub BackgroundProcess () 'Gör en lång process här, inte bara en oändlig slinga Gör medan True Loop End Sub
-
För att borra ner lägger du till följande kod i formulärets stängningsmetod:
Privat Subform1_FormClosing (ByVal avsändare Som Objekt, ByVal och Som System.Windows.Forms.FormClosingEventArgs) Hanterar Me.FormClosing t.Abort () End Sub
Utan denna rutin stängs inte programmet automatiskt av eftersom processen fortfarande körs.
-
Rotera programmet och klicka på enkelknappen på formuläret. Detta kommer att starta processen som är avsedd att köra i bakgrunden.
tips
- Var noga med att hålla allt i subrutinen som körs i bakgrunden i isolation. Utan att använda mer avancerade bearbetningstekniker är det inte möjligt att veta vad som händer när som helst.
Vad du behöver
- Visual Basic