Maison > Java > javaDidacticiel > le corps du texte

Explication détaillée de l'interface Runnable de Java pour créer des threads

怪我咯
Libérer: 2017-07-04 16:45:37
original
1050 Les gens l'ont consulté

Cet article présente principalement les informations pertinentes de l'interface Java Runnable pour créer des fils de discussion. Les amis qui en ont besoin peuvent se référer à l'

interface Java Runnable pour créer des fils de discussion<.>

Pour créer un thread, le moyen le plus simple est de créer une classe qui implémente l'interface Runnable.


Pour implémenter Runnable, une classe n'a besoin que d'exécuter un appel de méthode run(), déclaré comme suit :

public void run()
Copier après la connexion
Vous pouvez surcharger cette méthode, l'important est de comprendre que run () peut appeler d'autres méthodes, utiliser d'autres classes et déclarer des

variables tout comme le thread principal.

Après avoir créé une classe qui implémente l'interface Runnable, vous pouvez instancier un thread

objet dans la classe.

Thread définit plusieurs

méthodes de constructeur, la suivante est celle que nous utilisons souvent :

Thread(Runnable threadOb,String threadName);
Copier après la connexion
Ici, threadOb est une méthode qui implémente l'interface Runnable Une instance de la classe et threadName spécifie le nom du nouveau thread.

Une fois qu'un nouveau thread est créé, il ne s'exécutera pas tant que vous n'aurez pas appelé sa méthode start().

void start();
Copier après la connexion

Exemple

Ce qui suit est un exemple de création d'un thread et de démarrage de son exécution :

// 创建一个新的线程
class NewThread implements Runnable {
  Thread t;
  NewThread() {
   // 创建第二个新线程
   t = new Thread(this, "Demo Thread");
   System.out.println("Child thread: " + t);
   t.start(); // 开始线程
  }

  // 第二个线程入口
  public void run() {
   try {
     for(int i = 5; i > 0; i--) {
      System.out.println("Child Thread: " + i);
      // 暂停线程
      Thread.sleep(50);
     }
   } catch (InterruptedException e) {
     System.out.println("Child interrupted.");
   }
   System.out.println("Exiting child thread.");
  }
}

public class ThreadDemo {
  public static void main(String args[]) {
   new NewThread(); // 创建一个新线程
   try {
     for(int i = 5; i > 0; i--) {
      System.out.println("Main Thread: " + i);
      Thread.sleep(100);
     }
   } catch (InterruptedException e) {
     System.out.println("Main thread interrupted.");
   }
   System.out.println("Main thread exiting.");
  }
}
Copier après la connexion
Les résultats de la compilation le programme ci-dessus est le suivant :

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!