Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 18960|Jawab: 1

[Sumber] C# belajar menggunakan utas Thread

[Salin tautan]
Diposting pada 27/03/2017 17.32.28 | | |

. .NET framework adalah pustaka kelas runtime untuk C#, . .NET adalah lingkungan multi-threaded. Utas adalah proses kontrol berurutan tunggal dalam suatu proses. Utas adalah entitas dalam suatu proses. Sebuah proses dapat memiliki beberapa utas, dan utas harus memiliki proses induk.

     Utas umumnya memiliki tiga status dasar: baca, pemblokiran, dan pengoperasian. Dari tiga status dasar, lima operasi dasar utas diturunkan. Pertama, turunkan, utas diturunkan dalam suatu proses. Kedua, jadwalkan, pilih utas siap untuk masuk ke status operasi. Ketiga, blok, jika utas perlu menunggu peristiwa terjadi selama eksekusi, itu akan diblokir. Keempat, buka blokir, jika acara dimulai, utas dibuka blokirnya, memasuki antrean siap. Kelima, selesai, utas berakhir, dan konteks register dan konten tumpukan yang dieksekusi dirilis.

     Utas baru adalah objek utas yang baru dibuat yang belum mengalokasikan sumber daya. Oleh karena itu, Anda hanya dapat menggunakan metode start() atau close().

     Status yang dapat dijalankan adalah ketika utas mendapatkan sumber daya yang diperlukan untuk utas setelah metode start() berjalan dan memanggil metode run() untuk dieksekusi.

     Status Not Runable adalah status yang masuk ketika peristiwa berikut terjadi, metode suspend() dipanggil, metode sleep() dipanggil, utas menggunakan wait() untuk menunggu variabel kondisi, dan utas menunggu I/O.

    Mati adalah ketika metode Run() kembali, atau utas lain memanggil metode stop(), dan utas memasuki status mati. Di bawah ini adalah dua contoh sederhana Thread.


Ringkasan: Mengapa menggunakan Thread (multi-threading), ini untuk mencegah pemblokiran thread utama, jika Anda perlu memproses data dalam jumlah besar, atau memanggil metode yang memakan waktu, kita perlu menggunakan Thread multi-threading.

Contoh:


Tidak menggunakan multithreading: Antarmuka tidak merespons... Itu karena multithreading tidak digunakan




Mantan:Siapa bos real estat Wu Xuezhan di balik "kasus penghinaan ibu"?
Depan:BundleTable tidak memuat file js dan css dengan min
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com