Java -практика использования

        

Два подпроцесса запущенных



Листинг 17.1. Два подпроцесса, запущенных из главного подпроцесса

class OutThread extends Thread{

private String msg; 

OutThread(String s, String name){



super(name);
msg = s; 

public void run()

{

for(int i = 0; i < 20; i++){ 

// try{

// Thread.sleep(100);
 

// }catch(InterruptedException ie){}

System.out.print(msg + " ");
 

System.out.println("End of " + getName());
 

} class TwoThreads{

public static void main(String[] args){

new OutThread("HIP", "Thread 1").start();
 

new OutThread("hop", "Thread 2").start();
 

System.out.println();
 

}

На Рисунок 17.1 показан результат двух запусков программы листинга 17.1. Как видите, в первом случае подпроцесс Thread i успел отработать полностью до переключения процессора на выполнение второго подпроцесса. Во втором случае работа подпроцесса Thread i была прервана, процессор переключился на выполнение подпроцесса Thread 2, успел выполнить его полностью, а затем переключился обратно на выполнение подпроцесса Thread i и завершил его.



Содержание раздела