Dalam artikel sebelumnya, saya memperkenalkan metode implementasi java multi-threading.
Pertama-tama, izinkan saya memberi tahu Anda kelebihan dan kekurangan multi-threading
Keuntungan dari multithreading:
1) pemanfaatan sumber daya yang lebih baik
2) Pemrograman lebih sederhana dalam beberapa kasus
3) Program merespons lebih cepat
Biaya multithreading:
1) Desain yang lebih kompleks
Sementara beberapa aplikasi multithreaded lebih sederhana daripada aplikasi tunggal, yang lain umumnya lebih kompleks. Bagian kode ini membutuhkan perhatian khusus saat mengakses data bersama melalui beberapa utas. Interaksi antara utas seringkali sangat kompleks. Kesalahan yang dihasilkan oleh sinkronisasi utas yang salah sangat sulit untuk dideteksi dan direproduksi untuk diperbaiki.
2) overhead switching konteks
Ketika CPU beralih dari menjalankan satu utas ke menjalankan utas lain, ia harus terlebih dahulu menyimpan data lokal dari utas saat ini, pointer program, dll., Kemudian muat data lokal dari utas lain, pointer program, dll., Dan akhirnya mulai eksekusi. Pergantian ini disebut "sakelar konteks". CPU menjalankan utas dalam satu konteks dan kemudian beralih ke konteks lain untuk menjalankan utas lain. Switching konteks tidak murah. Jika tidak perlu, switching konteks harus dikurangi.
Ada dua teknologi utama untuk mendefinisikan dan memulai utas:
Pertama: kelas utas harus mengimplementasikan antarmuka java.lang.runnable atau mewarisi kelas java.lang.thread, dan keduanya harus mengimplementasikan metode run, di mana metode run tidak memiliki input, tidak ada output, dan tidak ada pengecualian.
Kedua: Panggil metode awal dari kelas utas untuk memulai utas.
tes paket; import java.util.vector; import java.util.date;/*** instance uji utas* @author masih mengalir**/kelas publik threadnew {/**** @author masih aliran air** / class Threada Thread {Private Date Runtime; ); Date (); */public void startb () {runnable threadb = new threadb (); [] args) {threadnew test = new threadNew ();