Page 62 - 4657
P. 62
Повідомлення
Якщо незабаром ви розділили свою програму на логічні
частини - підпроцеси, вам потрібно акуратно визначити, як ці
частини будуть спілкуватися один з одним. Java надає для цього
зручний засіб - два підпроцеса можуть “спілкуватися” один з
одним, використовуючи методи wait і notify. Працювати з
рівнобіжними підпроцесами в Java нескладно. Мова надає
явний, механізм керування, що набудовується тонко,
створенням підпроцесів, переключення контекстів, пріоритетів,
синхронізації й обміну повідомленнями між підпроцесами.
Підпроцес
Клас Thread інкапсулює усі засоби, що можуть вам
знадобитися при роботі з підпроцесами. При запуску Java-
програми в ній уже є один що виконується підпроцес. Ви завжди
можете з'ясувати, який саме підпроцес виконується в даний
момент, за допомогою виклику статичного методу
Thread.currentThread. Після того, як ви одержите дескриптор
підпроцеса, ви можете виконувати над цим підпроцесом різні
операції навіть у тому випадку, коли рівнобіжні підпроцеси
відсутні. У черговому нашому прикладі показано, як можна
керувати виконуючим в даний момент підпроцесом.
class CurrentThreadDemo {
public static void main(String args[]) {
Thread t = Thread.currentThread();
t.setName("My Thread");
System.out. println("current thread: " + t);
try {
for (int n = 5; n > 0; n--) {
System.out.println(" " + n);
Thread.sleep(1000);
} }
catch (InterruptedException e) {
System.out.println("interrupted");
}
60