2015-01-12 2 views
0

У меня есть 2 темы, они хотят, чтобы выполнить некоторый процесс таким образомТемы для выполнения печати только определенные номера диапазона

Public Class MyThread implements Runnable{ 
in public void run(){ 

for(int i=0;i<=20;i++) 
//t1 thread will come & print 1 to 10 numbers only 
//t2 thread will come & print next numbers i.e 11 to 20 only. 

} 

} 

public Class MainClass{ 

public static void main(String arg[]){ 

MyThread obj=new MyThread(); 
Thread t1=new Thread(obj); 
Thread t2=new Thread(obj); 
t1.start(); 
t2.start(); 

} 
} 

Как я могу ограничить мои темы на печать только номера с условиями, указанными в счете () метод?

ответ

3

Это не так, как это работает; используйте что-то вроде этого.

class NumberPrinter implements Runnable 
{ 

    private final int start, end; 

    public NumberPrinter(int start, int end) 
    { 
     this.start = start; 
     this.end = end; 
    } 

    @Override 
    public void run() 
    { 
     for (int i = start; i <= end; ++i) 
      System.out.println(i); 
    } 
} 

Вызов:

Thread t1 = new Thread(new NumberPrinter(1, 10)); 
Thread t2 = new Thread(new NumberPrinter(11, 20)); 
t1.start(); 
t2.start(); 

Конечно, вам придется расширить этот пример (например, проверить, является ли начальное значение меньше, чем конец), но это дает примерное представление.

Смежные вопросы