Come ruotare le subroutine di Visual Basic in background

Autore: Bobbie Johnson
Data Della Creazione: 4 Aprile 2021
Data Di Aggiornamento: 1 Dicembre 2024
Anonim
Live Coding: Attività in background e schedulate con .NET
Video: Live Coding: Attività in background e schedulate con .NET

Contenuto

Quando un programma per computer deve eseguire una lunga subroutine, è meglio eseguirlo come processo in background. Generalmente, un processo in background non ha la stessa priorità del primo piano, quindi verrà eseguito più lentamente. Le subroutine possono includere il controllo e il download di aggiornamenti, il download di file di registro o lunghi calcoli.


indicazioni

Le subroutine in background sono ottime per i processi lunghi (Kutay Tanir / Photodisc / Getty Images)
  1. Eseguire Visual Basic e creare un nuovo progetto di tipo Windows Form.

  2. Inserisci la prima riga del codice file:

    "Imports System.Threading"

    E aggiungi:

    "Dim t As Thread"

    alla sezione principale del modulo.

  3. Aggiungi un pulsante al modulo e cambia il suo nome in "btnStart". Cambia il testo del pulsante su "Avvia processo in background".

  4. Aggiungi il seguente codice all'azione del pulsante "btnStart":

    Private Sub btnStart_Click (ByVal sender As System.Object, ByVal e As System.EventArgs) Gestisce btnStart.Click t = New Thread (AddressOf Me.BackgroundProcess) t.Priority = ThreadPriority.BelowNormal 'Ciò darà alla subroutine una priorità ancora minore t . Start () Fine Sott


    Questa routine avvierà un processo in background e darà una priorità più bassa del normale, in modo che funzioni a una velocità inferiore e non interferisca con gli elementi di navigazione dell'utente.

  5. Aggiungi la seguente subroutine per l'esecuzione in background:

    Private Sub BackgroundProcess () 'Fai un lungo processo qui, non solo un ciclo infinito Do While True Loop End Sub

  6. Per eseguire il drill down, aggiungi il seguente codice al metodo di chiusura del modulo:

    Private Sub Form1_FormClosing (ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Gestisce Me.FormClosing t.Abort () End Sub

    Senza questa routine, il programma non si spegnerà automaticamente perché il processo è ancora in esecuzione.

  7. Ruota il programma e fai clic sul singolo pulsante sul modulo. Questo avvierà il processo destinato a funzionare in background.


suggerimenti

  • Assicurati di tenere tutto in sottoroutine in esecuzione in background in isolamento. Senza utilizzare tecniche di elaborazione più avanzate, non è possibile sapere cosa succede in qualsiasi momento.

Cosa ti serve

  • Visual Basic