Maison  >  Article  >  Java  >  Explication détaillée des exemples de priorité des threads Java

Explication détaillée des exemples de priorité des threads Java

Y2J
Y2Joriginal
2017-05-03 15:05:251236parcourir

Cet article présente principalement des informations pertinentes sur la priorité des threads Java et des exemples. Les amis qui en ont besoin peuvent se référer à

Détails et exemples de priorité des threads Java

Le système d'exploitation. utilise essentiellement la planification par répartition dans le temps pour exécuter les threads. Le système d'exploitation attribuera les tranches de temps une par une, et les threads seront attribués à plusieurs tranches de temps. Lorsque la tranche de temps du thread est épuisée, la planification des threads se produira et il attendra le. lors de la prochaine planification. , la tranche de temps attribuée à un thread détermine la quantité de ressources processeur que le thread utilise, et la priorité du thread est l'attribut du thread qui détermine la quantité de ressources processeur que le thread peut allouer.

Dans le multi-threading Java, la priorité est contrôlée par une priorité variable entière. La priorité est comprise entre 1 et 10. La valeur par défaut est 5, et plus la priorité est élevée, mieux c'est.

public class Priority { 
  public static void main(String[] args) { 
    Thread t1 = new Mythread(); 
    t1.setName("线程1"); 
    t1.setPriority(1); //设置优先级 
    Thread t2 = new Mythread(); 
    t2.setName("线程2"); 
    t2.setPriority(10); //设置优先级 
    t1.start(); 
    t2.start(); 
  }  
} 
class Mythread extends Thread{ 
  @Override 
  public void run() { 
    for(int i=0;i<10;i++){ 
      System.out.println(getName()+"执行"+i+"次"); 
    } 
  } 
}

Résultat de l'exécution :

线程2执行0次 
线程2执行1次 
线程2执行2次 
线程2执行3次 
线程2执行4次 
线程2执行5次 
线程2执行6次 
线程2执行7次 
线程2执行8次 
线程2执行9次 
线程1执行0次 
线程1执行1次 
线程1执行2次 
线程1执行3次 
线程1执行4次 
线程1执行5次 
线程1执行6次 
线程1执行7次 
线程1执行8次 
线程1执行9次

Nous pouvons voir que le système exécutera le thread 1 en premier. Cependant, le thread 1 ne sera pas exécuté en premier à chaque fois, surtout lorsque la différence de priorité entre les deux threads n'est pas très grande, la priorité du thread a fondamentalement peu d'effet. La priorité des threads ne peut pas être invoquée pour garantir l'exactitude du programme, car le système d'exploitation peut ignorer complètement les décisions de priorité des threads Java.

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!

Déclaration:
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