Метод Thread isAlive() в Java с примерами
Класс Thread в Java предоставляет множество методов, которые очень важны для понимания работы потоков, поскольку они запускают этапы потока. Многопоточность Java предоставляет два способа поиска с помощью методов isAlive() и join().
 Один поток узнает, когда закончился другой поток. Давайте изобразим этапы жизненного цикла потока с помощью изображения ниже, которое поможет нам соединить точки, чтобы понять работу этих методов.

Теперь давайте более подробно обсудим метод isAlive() класса Thread. По сути, этот метод работает внутри очень близко параллельно этапам жизненного цикла потока. Он проверяет, жив ли этот поток. Поток жив, если он был запущен и еще не умер. Существует переходный период между выполнением потока и моментом, когда поток не выполняется.
 После возврата из метода run() проходит небольшой промежуток времени, прежде чем поток остановится. Если мы хотим знать, был ли вызван метод запуска класса потока или поток был завершен, мы должны использовать метод isAlive(). Этот метод используется, чтобы узнать, действительно ли поток был запущен и еще не завершился.
Синтаксис:
final boolean isAlive()
Возвращаемое значение: возвращается логическое значение
Note: While returning this function returns true if the thread upon which it is called is still running. It returns false otherwise.
Пример
Java
| // Java program to Illustrate isAlive() Method// of Thread class// Main class extending Thread classpublicclassoneThread extendsThread {    // Method 1    // run() method for thread    publicvoidrun()    {        // Print statement        System.out.println("geeks ");        // Try block to check for exceptions        try{                      // making thread to sleep for 300 nano-seconds           // using sleep() method            Thread.sleep(300);        }        // Catch block to handle InterruptedException        catch(InterruptedException ie) {        }        // Display message when exception occurred        System.out.println("forgeeks ");    }    // Method 2    // Main driver method    publicstaticvoidmain(String[] args)    {        // Creating threads using above class as        // it is extending Thread class        oneThread c1 = newoneThread();        oneThread c2 = newoneThread();        // Starting threads        c1.start();        c2.start();        // Checking whether thread is alive or not        // Returning boolean true if alive else false        System.out.println(c1.isAlive());        System.out.println(c2.isAlive());    }} | 
Выход:
geeks true true geeks forgeeks forgeeks
Эта статья предоставлена Шивани Гугтиал . Если вам нравится GeeksforGeeks и вы хотите внести свой вклад, вы также можете написать статью с помощью write.geeksforgeeks.org или отправить ее по адресу review-team@geeksforgeeks.org. Посмотрите, как ваша статья появится на главной странице GeeksforGeeks, и помогите другим гикам. Пожалуйста, пишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по теме, обсуждаемой выше.