Come Eseguire Visual subroutine di base in background

April 20

Come Eseguire Visual subroutine di base in background


Quando un programma per computer deve eseguire una subroutine molto allungato, è meglio averlo eseguire la subroutine come un thread in background. Un processo in background di solito non ha la stessa priorità di un processo di interfaccia utente, in modo che eseguirà più lentamente. Le subroutine possono includere il controllo e il download degli aggiornamenti, il trasferimento di file di registro o l'esecuzione di calcoli lunghi.

istruzione

1 Avviare Visual Basic e creare un nuovo progetto del tipo di progetto Windows Form.

2 Effettuare la prima riga del file di codice:

"Le importazioni System.Threading"

E aggiungi:

"Dim T come filo"

per la classe principale nella forma.

3 Aggiungere un pulsante al form e cambiare il suo nome in "btnStart." Modificare proprietà di testo del pulsante "Start processo in background."

4 Aggiungere il seguente codice per l'azione di clic "btnStart":

Private Sub btnStart_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnStart.Click

t = nuova discussione (AddressOf Me.BackgroundProcess)

t.Priority = ThreadPriority.BelowNormal 'Questo spingerà la subroutine ancora di più in secondo piano

t.Start ()

End Sub

Questa routine avviare un processo in background e dare un più basso del normale priorità modo che verrà eseguito un po 'più lentamente e non interferire con gli elementi dell'interfaccia utente.

5 Aggiungere il sottoprogramma deve essere eseguito in background:

Private Sub BackgroundProcess()

'Fare un processo lungo qui, non solo un ciclo infinito

Do While True

Ciclo continuo

End Sub

6 Per completezza, aggiungere il seguente codice al metodo di chiusura forme:

Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing

t.Abort ()

End Sub

Senza questa routine, il programma non uscirà normalmente perché il filo sarà ancora in esecuzione.

7 Eseguire il programma e fare clic sul pulsante solo sul modulo. Questo avvierà il processo che deve essere eseguito in background.

Consigli e avvertenze

  • Essere sicuri di tenere tutto nella subroutine da eseguire in background molto isolata. Senza utilizzando tecniche di filettatura più avanzate, non è possibile sapere cosa accade in un dato momento.