Bagaimana untuk memutar subrutin Visual Basic di latar belakang

Pengarang: Ellen Moore
Tarikh Penciptaan: 16 Januari 2021
Tarikh Kemas Kini: 7 November 2024
Anonim
An example for Dload subroutine in Abaqus
Video.: An example for Dload subroutine in Abaqus

Kandungan

Apabila program komputer perlu menjalankan subroutine yang panjang, yang terbaik adalah untuk menjalankannya sebagai proses latar belakang. Proses latar belakang tidak biasanya mempunyai keutamaan yang sama seperti latar depan, sehingga ia akan berjalan lebih perlahan. Subrutin mungkin termasuk menyemak dan memuat turun kemas kini, memuat turun fail log, atau pengiraan yang panjang.


Arahan

Subrutin di latar belakang sangat baik untuk proses yang panjang (Kutay Tanir / Photodisc / Getty Images)
  1. Jalankan Visual Basic dan buat projek baru jenis Borang Windows.

  2. Masukkan baris pertama kod fail:

    "Import Sistem.Threading"

    Dan tambahkan:

    "Dim t As Thread"

    ke bahagian utama borang.

  3. Tambah butang pada borang dan ubah namanya kepada "btnStart". Tukar teks butang ke "Mula proses latar belakang".

  4. Tambah kod berikut untuk tindakan butang "btnStart":

    Private Sub btnStart_Click (Pengirim ByVal Sebagai System.Object, ByVal dan Sebagai System.EventArgs) Mengendalikan btnStart.Click t = Thread Baru (AddressOf Me.BackgroundProcess) t.Priority = ThreadPriority.BelowNormal 'Ini akan memberikan subrutin yang kurang prioritas t .Start () Akhir Sub


    Rutin ini akan memulakan proses di latar belakang dan memberikan keutamaan yang lebih rendah daripada biasa, supaya ia berjalan pada kelajuan yang lebih lambat dan tidak mengganggu elemen navigasi pengguna.

  5. Tambahkan subrutin berikut untuk berjalan di latar belakang:

    Sub Latar Belakang PribadiProses () 'Lakukan proses yang panjang di sini, bukan sahaja gelung tak terhingga

  6. Untuk mengetuk, tambahkan kod berikut ke kaedah penutupan borang:

    Sub Form1_FormClosing Private (Pengirim ByVal Sebagai Objek, ByVal dan Sebagai System.Windows.Forms.FormClosingEventArgs) Mengendalikan Me.FormClosing t.Abort () End Sub

    Tanpa rutin ini, program ini tidak akan ditutup secara automatik kerana prosesnya masih berjalan.

  7. Putar program dan klik butang tunggal pada borang. Ini akan memulakan proses yang bertujuan untuk berjalan di latar belakang.

Bagaimana

  • Pastikan semua perkara dalam subroutine berjalan di latar belakang secara berasingan. Tanpa menggunakan teknik pemprosesan yang lebih maju, tidak mungkin untuk mengetahui apa yang berlaku pada bila-bila masa.

Apa yang anda perlukan

  • Visual Basic