Ir divi veidi, kā izveidot pavedienu:
- Paplašinot pavedienu klasi
- Ieviešot Runnable interfeisu.
Pavediena klase:
Pavedienu klase nodrošina konstruktorus un metodes, lai izveidotu un veiktu darbības ar pavedienu. Pavedienu klase paplašina objektu klasi un ievieš izpildāmu saskarni.
Bieži izmantotie pavedienu klases konstruktori:
- Pavediens()
- Pavediens (virknes nosaukums)
- Pavediens (Runnable R)
- Pavediens (izpildāms r, virknes nosaukums)
Visbiežāk izmantotās pavedienu klases metodes:
Darbināms interfeiss:
Runnable interfeiss ir jārealizē jebkurai klasei, kuras gadījumus ir paredzēts izpildīt pavedienā. Palaižamajam interfeisam ir tikai viena metode ar nosaukumu run ().
konvertēt java objektu uz json
Pavediena sākšana:
The start() metode of Thread klase tiek izmantota, lai sāktu jaunizveidotu pavedienu. Tas veic šādus uzdevumus:
- Sākas jauns pavediens (ar jaunu zvanu steku).
- Pavediens pāriet no statusa Jauns uz stāvokli Runnable.
- Kad pavediens saņems iespēju izpildīt, tiks palaists tā mērķa palaišanas () metode.
1) Java Thread piemērs, paplašinot Thread klasi
Faila nosaukums: Multi.java
class Multi extends Thread{ public void run(){ System.out.println('thread is running...'); } public static void main(String args[]){ Multi t1=new Multi(); t1.start(); } }
Izvade:
bash stīgas garums
thread is running...
2) Java pavediena piemērs, ieviešot Runnable interfeisu
Faila nosaukums: Multi3.java
class Multi3 implements Runnable{ public void run(){ System.out.println('thread is running...'); } public static void main(String args[]){ Multi3 m1=new Multi3(); Thread t1 =new Thread(m1); // Using the constructor Thread(Runnable r) t1.start(); } }
Izvade:
thread is running...
Ja jūs nepaplašināt Thread klasi, jūsu klases objekts netiks uzskatīts par pavediena objektu. Tātad jums ir skaidri jāizveido Thread klases objekts. Mēs nododam jūsu klases objektu, kas ievieš Runnable, lai varētu izpildīt jūsu klases run() metodi.
3) Pavedienu klases izmantošana: pavediens (virknes nosaukums)
Mēs varam tieši izmantot Thread klasi, lai radītu jaunus pavedienus, izmantojot iepriekš definētos konstruktorus.
Faila nosaukums: MyThread1.java
Pīta Deividsona vecums
public class MyThread1 { // Main method public static void main(String argvs[]) { // creating an object of the Thread class using the constructor Thread(String name) Thread t= new Thread('My first thread'); // the start() method moves the thread to the active state t.start(); // getting the thread name by invoking the getName() method String str = t.getName(); System.out.println(str); } }
Izvade:
My first thread
4) Pavedienu klases izmantošana: pavediens (Runnable r, virknes nosaukums)
Ievērojiet tālāk norādīto programmu.
Faila nosaukums: MyThread2.java
public class MyThread2 implements Runnable { public void run() { System.out.println('Now the thread is running ...'); } // main method public static void main(String argvs[]) { // creating an object of the class MyThread2 Runnable r1 = new MyThread2(); // creating an object of the class Thread using Thread(Runnable r, String name) Thread th1 = new Thread(r1, 'My new thread'); // the start() method moves the thread to the active state th1.start(); // getting the thread name by invoking the getName() method String str = th1.getName(); System.out.println(str); } }
Izvade:
My new thread Now the thread is running ...