Rumah >Java >javaTutorial >Cap Pengaturcaraan dengan berbilang benang

Cap Pengaturcaraan dengan berbilang benang

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-22 05:38:171025semak imbas

Kemahiran dan konsep utama
• Fahami asas mencipta berbilang urutan
• Ketahui kelas Thread dan antara muka Runnable
• Buat urutan
• Buat berbilang urutan
• Tentukan bila benang tamat
• Gunakan keutamaan benang
• Fahami penyegerakan benang
• Gunakan kaedah yang disegerakkan
• Gunakan blok yang disegerakkan
• Galakkan komunikasi antara benang
• Gantung, sambung semula dan hentikan rangkaian

Benang: Ini adalah laluan pelaksanaan bebas dalam program.
Berbilang tugas: Ia boleh berdasarkan proses (beberapa program) atau urutan (beberapa tugas dalam program yang sama).
Kelebihan:
Kecekapan yang lebih baik apabila menggunakan masa terbiar.
Penggunaan sistem berbilang teras/berbilang pemproses yang lebih baik.

Penciptaan dan Pengurusan Thread

Kelas dan Antara Muka:
Benang: Kelas yang merangkum benang.
Boleh Dijalankan: Antara muka yang digunakan untuk menentukan urutan tersuai.

Kaedah Kelas Benang Biasa:

  • getName(): Mengembalikan nama urutan.
  • getPriority(): Mengembalikan keutamaan.
  • isAlive(): Menyemak sama ada urutan masih dijalankan.
  • join(): Menunggu urutan selesai.
  • run(): Mentakrifkan titik kemasukan benang.
  • sleep(long ms): Menggantung benang untuk satu tempoh masa.
  • start(): Memulakan pelaksanaan thread.

Mencipta Benang:

  • Melaksanakan Runnable:
class MyThread implements Runnable {
    String threadName;

    MyThread(String name) {
        threadName = name;
    }

    public void run() {
        System.out.println(threadName + " starting.");
        try {
            for (int i = 0; i 


<p>Keluaran yang dijangkakan:<br>
</p>

<pre class="brush:php;toolbar:false">Main thread starting.
.
Child #1 starting.
..
In Child #1, count is 0
...
In Child #1, count is 1
...
Main thread ending.

Pelanjutan Kelas Benang:

class MyThread extends Thread {
    MyThread(String name) {
        super(name);
    }

    public void run() {
        System.out.println(getName() + " starting.");
        try {
            for (int i = 0; i 



<p>nota: Kaedah sleep() menjadikan benang di mana ia dipanggil menggantung pelaksanaan <br>
untuk tempoh milisaat yang ditentukan.</p>

<p>meja buku<br>
<img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/173222510810234.jpg?x-oss-process=image/resize,p_40" class="lazy" alt="Cap Programação com várias threads"></p>


          

            
        

Atas ialah kandungan terperinci Cap Pengaturcaraan dengan berbilang benang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn