/ / Много нишки в Java процес - java, мултитренинг, jvm

Много теми в Java процес - java, multithreading, jvm

Защо простото Java GUI приложение създава толкова много нишки?

въведете описанието на изображението тук

Отговори:

9 за отговор № 1

Java използва теми за много неща:

  • Основната нишка на приложението, разбира се
  • Всички теми, които приложението стартира (напр. SwingWorker)
  • Swing има отделна нишка за изпращане на събития, както и някои други нишки за домакинството
  • Таймери, някои от които може да започнат да се подразбират
  • Една или повече нишки за събиране на боклука
  • Мисля, че обикновено има отделна нишка, подготвена да изпълнява спирането на куките
  • Други вътрешни JVM неща

4 за отговор № 2

Обикновено Java Swing GUI има следните теми:

Thread [AWT-Shutdown] (Suspended)
Object.wait(long) line: not available [native method] [local variables unavailable]
Object.wait() line: 485
AWTAutoShutdown.run() line: 265
Thread.run() line: 619

Daemon Thread [AWT-Windows] (Suspended)
WToolkit.eventLoop() line: not available [native method] [local variables unavailable]
WToolkit.run() line: 295
Thread.run() line: 619

Thread [AWT-EventQueue-0] (Suspended)
Object.wait(long) line: not available [native method] [local variables unavailable]
EventQueue(Object).wait() line: 485
EventQueue.getNextEvent() line: 479
EventDispatchThread.pumpOneEventForFilters(int) line: 236
EventDispatchThread.pumpEventsForFilter(int, Conditional, EventFilter) line: 184
EventDispatchThread.pumpEventsForHierarchy(int, Conditional, Component) line: 174
EventDispatchThread.pumpEvents(int, Conditional) line: 169
EventDispatchThread.pumpEvents(Conditional) line: 161
EventDispatchThread.run() line: 122

Thread [DestroyJavaVM] (Suspended)

1 за отговор № 3

Ако прикачите дебъгер, можете да видите имената и да се досетите,

но нишките вероятно са една или две нишки за събиране на боклука, няколко нишкови фонови нишки като таймери, почистване и т.н.


1 за отговор № 4

Също така, ако огън до jconsole (безплатно приложение Java в. \ Tjdk) и се свържете с работеща програма java, има раздел "thread", който ще ви позволи да разгледате колко нишки са, както и списък с теми, които можете да кликнете за повече информация.