Когда stream Java достигает состояния «Die»

В Java Die является одним из состояний в streamе.

Что заставляет stream вводить это состояние?

В API-интерфейсе Thread представлен полный список:

  • Если метод run () возвращается.
  • Если выбрано исключение, которое распространяется за пределы метода run.
  • Если это stream демона, и все не-демонные streamи «умерли»,
  • Если вызывается метод выхода classа Runtime (даже в другом streamе).

Вся Thread умирает либо путем возврата из вызова метода run либо путем исключения исключения, которое распространяется за пределы метода run .

Есть две возможности для того, чтобы нить умереть:

a) Он может умереть от естественных причин, когда метод run () заканчивается или возвращается,

или

б) его можно убить с помощью метода stop () или когда что-то пойдет не так с программой (это может быть исключение) или компьютером.

Нитки умирают в следующих ситуациях:

  1. Когда метод, который он запускает, заканчивает (или бросает)
  2. Когда процесс завершается
  3. Когда компьютер выключен или перезагружен.
  • .net во время сбоя при свободном фокусе win7
  • Java Подождите, пока stream завершится
  • Dispatcher Invoke (...) против BeginInvoke (...) путаницы
  • Защита streamов std :: map для операций только для чтения
  • Обработчики событий не являются streamобезопасными?
  • C ++ 11 представил стандартизованную модель памяти. Что это значит? И как это повлияет на программирование на С ++?
  • Доступ к интерфейсу пользовательского интерфейса (Main) безопасно в WPF
  • Использует ли использование библиотеки Tasks (TPL) multithreading приложения?
  • Почему Thread.isInterrupted () всегда возвращает false?
  • Вызывающий stream должен быть STA, потому что многие компоненты пользовательского интерфейса требуют этого
  • Как реализовать приоритезацию задач с помощью ExecutorService в Java 5?
  • Давайте будем гением компьютера.