Составители:
Рубрика:
72
этого класса. Класс Thread содержит методы формирования и конфи-
гурации потоков исполнения, методы сбора информации о потоках и
методы управления потоками.
• static Thread currentThread( ) – возвращает
ссылку на экземпляр класса Thread, исполняющий
данный код – т. н., текущий
поток.
• String getName( ) – сообщает имя потока. Если
имя потока не задано, оно назначается автоматиче-
ски.
• static void sleep(long millis ) – приостанав-
ливает исполнение текущего потока на millis милли-
секунд. Время, которое поток исполнения проводит в
состоянии сна, может быть использовано для переда-
чи ему управляющего сигнала. Для подачи сигнала
нужно вызвать метод interrupt( ) у
«спящего» пото-
ка. Этот метод заставляет метод sleep( ) выбрасы-
вать объект класса InterruptedException. (Как ви-
дите, исключения используются не только для описа-
ния исключительных ситуаций). Выбрасывание исклю-
чения может стать причиной изменения поведения по-
тока.
• static boolean interrupted( ) – проверяет со-
стояние текущего потока на предмет того, не было
ли сделано для него
вызова interrupt( ). Этот ме-
тод изменяет состояние потока, «вычищая» индекс
прерванности.
• boolean isInterrupted( ) – динамический ана-
лог предыдущего метода, не изменяющий состояния
потока.
• boolean isAlive( ) – определяет, жив поток
или нет.
• void setName(String name ) – устанавливает
имя потока.
73
• int getPriority( ) – возвращает значение при-
оритета потока.
• void setPriority(int value) – устанавливает
приоритет потока равным заданному значению. Если
значение приоритета недопустимо или текущий поток
не имеет прав для изменения приоритета данного по-
тока, выбрасываются исключения
IllegalArgumentException или SecurityException.
• boolean isDaemon( ) – определяет, является
поток демоном или пользовательским потоком.
• void setDaemon(boolean value ) – устанавлива-
ет для потока свойство демона или
пользовательско-
го потока.
• void join( ) – вынуждает текущий поток ожи-
дать завершения указанного потока неопределенное
количество времени (есть еще две версии метода,
задающие интервал ожидания). Поток, выполняющий
этот метод может быть прерван методом interrupt().
• String toString( ) – возвращает строку, опи-
сывающую данный поток. Эта строка включает имя по-
тока, приоритет и имя группы, к которой
принадле-
жит поток.
• static void yeild( ) – вынуждает текущий по-
ток уступить право исполнения другому потоку, то
есть, обратиться к диспетчеру потоков, вынудив его
решать, который из имеющихся потоков должен испол-
няться. Если диспетчер решит исполнять этот же по-
ток, то поток незамедлительно продолжит исполне-
ние.
• void start( ) – метод, инициирующий начало
выполнение потока;
заставляет виртуальную машину
вызвать метод run() данного потока исполнения.
• void run( ) – метод, который определяет со-
держание потока исполнения. Поток существует, пока
выполняется его метод run(). Класс Thread имеет