
Memang benar background sering di artikan sebagai sejenis gambar-gambaran yang bagus dan memukau, tapi tahukah anda arti dari background sesungguhnya?
Background (inggris) yang berarti “latar belakang” nah, apa hubungannya dengan vb? ? ? tambah ngawur nih topik pembicaraan, gantung aja tu penulis... wkwkwkkwwkkwk :D
Memang benar background berarti sebuah latar belakang, background seseorang berarti latar belakang seseorang, background gambar berarti gambar latar belakang. Tapi tahukah agan-agan sekalian didalam pemograman terdapat juga istilah background? Ya, dalam pemograman visual studio .Net terdapat sebuah fasilitas yang bernama background worker.
Background worker adalah sebuah kontrol yang akan menjalankan proses –proses komputer dibelakang proses yang lain? Maksudnya adalah menjalankan proses komputer tanpa mengganggu proses yang sedang berjalan dengan antar muka. Tambah bingung? Wkwkkwkwkw. Hal itu dapat terjadi karena proses yang menggunakan background worker dialokasikan kedalam memori yang tersisa, jadi ketika ada proses utama sedang berjalan, sisa dari proses tersebut yang akan digunakan untuk memproses background worker, tapi apa bila proses utama memakai semua memori maka proses background worker tidak akan berjalan sebelum proses utama selesai, dan apa bila tidak ada proses utama maka proses background worker berjalan secepat proses utama tadi.
Pernah lihat antivirus menscan, pernah lihat winrar ketika sedang mengekstrak berkas? Seperti itulah. Seperti kita ketahui didalam pemograman pasti akan menggunakan perulangan dan perulangan, jadi ada kalanya suatu perulangan akan memakan waktu yang lama hingga selesai. Seperti contoh perulangan mencari berkas, atau mencari data dalam database yang besar. Nah, dengan menggunakan backgroundworker kita dapat tetap menjalankan proses itu seperti biasa, bedanya adalah ketika proses perulangan sedang berjalan pada backgroundworker, kita masih dapat melakukan proses yang lainnya tanpa menunggu proses perulangan itu selesai. Hebatkan?
Didalam tulisan ini admin akan menjelaskan secara singkat bagaimana cara penggunaan backgroundworker tersebut.
Private Sub Event DoWork()
Proses()
End Sub
NamaBackgroundWorker.RunWorkerAsync()
Public Class Form1
Private Sub Button1_Click(ByValsender As System.Object, ByVal e
As System.EventArgs) HandlesButton1.Click
BackgroundWorker1.RunWorkerAsync()
End Sub
Private Sub BackgroundWorker1_DoWork(ByValsender As System.Object,ByVal e As
System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
Application.DoEvents()
Dim i As Integer = 0
Do Until i = 100
System.Threading.Thread.Sleep(100)
i += 1
Label2.Text = "Proses Belakang " & i
Loop
End Sub
Private Sub Button2_Click(ByValsender As System.Object, ByVal e As
System.EventArgs) HandlesButton2.Click
Dim b As Integer = 0
Do Until b = 100
Application.DoEvents()
System.Threading.Thread.Sleep(100)
b += 1
Label1.Text = "Proses Depan " & b
Loop
End Sub
Private Sub Form1_FormClosing(ByValsender As Object, ByVal e As
System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
BackgroundWorker1.Dispose()
End Sub
Private Sub Form1_Load(ByValsender As System.Object, ByVal e As
System.EventArgs) HandlesMyBase.Load
System.Windows.Forms.Form.CheckForIllegalCrossThreadCalls = False
BackgroundWorker1.WorkerSupportsCancellation = True
End Sub
End Class
“.Windows.Forms.Form.CheckForIllegalCrossThreadCalls = False” Kode ini berfungsi untuk memperbolehkan proses cross antar control, yaitu membolehkan backgroundworker melakukan proses terhadap kontrol seperti textbox, label dan lain-lain.
“BackgroundWorker1.WorkerSupportsCancellation = True” Kode ini berfungsi untuk mengaktifkan fasilitas cancel pada background worker.
Silahkan untuk contoh program yang telah penulis buat dibawah ini.
Menggunakan Kontrol Background Worker Visual Basic .Net
(* Artikel oleh visualbasic-indonesia, source code oleh visualbasic-indonesia
Silahkan untuk contoh program yang telah penulis buat dibawah ini.
Menggunakan Kontrol Background Worker Visual Basic .Net
(* Artikel oleh visualbasic-indonesia, source code oleh visualbasic-indonesia
Comments
Post a Comment