Page 233 - 6571
P. 233

У інтерфейсі Runnable визначено тільки один метод pub
            ic void run(),  який  вимагає  реалізації.  Коли  створюється
            клас, що імплементує інтерфейс Runnable, він повинен реалізу-

            вати метод run(). Саме в цьому методі міститься код, який ви-

            конує фактичну роботу, покладену на конкретний потік.
                  Створити  потік  можна  за  допомогою  одного  із  наступних
            конструкторів:
                  1) public Thread() – створюється  новий потік, який  бу-

                     де запускати потоки за допомогою виклику методу run()
                     поточного об'єкту класу Thread;

                  2) public  Thread(String  name)  –  даний  конструктор
                     аналогічний попередньому, але створює новий потік із за-

                     даним ім’ям name;
                  3) public  Thread(Runnable  target)  –  даний  конс-

                     труктор створює новий потік, де в target вказується ек-
                     земпляр класу, який реалізує інтерфейс Runnable. Він бу-
                     де визначати де почнеться виконання потоку (буде викли-

                     катися метод  run() вказаного цільового об'єкту);
                  4) public  Thread(Runnable  target,  String  na
                     e) – конструктор аналогічний попередньому, але задає ім’я

                     нового потоку через name;
                  5) public  Thread(ThreadGroup  group,  String

                     name) – даний конструктор призначений для переміщення
                     нового об'єкту Thread в дерево об'єктів даного класу. Як-

                     що  опустити  даний  параметр  або  привласнити  йому  зна-
                     чення null, новий об'єкт класу Thread стане членом по-
                     точної групи потоків ThreadGroup.

                  Наступні методи дозволяють отримати ім’я потоку або вста-
            новити його:
                  1) public  final  String  getName()  –  дозволяє  отри-

                     мати ім’я потоку;
                  2) public  final  synchronized  void  setNam-
                     e(String name) – дозволяє задати ім’я потоку.

                  Коли потік створено, то для його запуску необхідно із об’єкта
            цільового  потоку  викликати  метод  public  synchronized

            void  start().  Даний  метод  може  генерувати  виняток,  якщо
            робиться спроба запуску вже запущеного потоку.

                                                        232
   228   229   230   231   232   233   234   235   236   237   238