Multithreading privilegije
29.09.2007. u 14:55 · pre 232 meseci
#1
Jos jedno pitanje za Java znalce, recimo da imamo kod slican ovome:
Ono sto me zanima da li Java garantira pozivanje threadova po redosljedu navodjenja u main() metodi, nije bitno koji ce se prije zavrsiti vec me samo zanima njihovo pokretanje.
Moze li se recimo, ikad desiti da se drugi thread pokrene prije prvog ili treci prije prvog ili drugog?
Dakle hoce li se threadovi APSOLUTNO UVIJEK pokrenuti po redu koji mi naznacimo, bilo da se radi o kompjuteru sa vise procesora ili samo sa jednim?
Code:
class Proba extends Thread {
public void run() {}
}//:~
public class Tester {
public static void main(String[] args) throws Exception {
System.out.println("BEGIN MAIN");
Proba prvi = new Proba();
Proba drugi = new Proba();
Proba treci = new Proba();
prvi.start();
drugi.start();
treci.start();
System.out.println("END MAIN");
}
}//:~
class Proba extends Thread {
public void run() {}
}//:~
public class Tester {
public static void main(String[] args) throws Exception {
System.out.println("BEGIN MAIN");
Proba prvi = new Proba();
Proba drugi = new Proba();
Proba treci = new Proba();
prvi.start();
drugi.start();
treci.start();
System.out.println("END MAIN");
}
}//:~
Ono sto me zanima da li Java garantira pozivanje threadova po redosljedu navodjenja u main() metodi, nije bitno koji ce se prije zavrsiti vec me samo zanima njihovo pokretanje.
Moze li se recimo, ikad desiti da se drugi thread pokrene prije prvog ili treci prije prvog ili drugog?
Dakle hoce li se threadovi APSOLUTNO UVIJEK pokrenuti po redu koji mi naznacimo, bilo da se radi o kompjuteru sa vise procesora ili samo sa jednim?