Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Много ли ресурсов потребляет java.util.Timer? Насколько Timer прдгружает процессор 
V
    Опции темы
lazycat
Дата 22.1.2016, 20:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 227
Регистрация: 15.7.2007

Репутация: 1
Всего: 1



Доброго времени суток всем!

Кто хорошо знает класс java.util.Timer? Как много ресурсов потребляет он в режиме ожидания (задача запланирована, но еще не начата) ? Другими словами, как реализуется ожидание запуска запланированной задачи ?

Хочу использовать его на очень-очень нагруженном сервере. Хочу с его помощью планировать задачи. Сама планируемая задача хоть и потребяет много ресурсов, но выполнять ее надо, это не обсуждается. Но что в этом плане можно сказать о Timer ? Если он будет активен сутками или даже неделями, не помешает ли он основным функциям сервера ?

Есть ли с точки зрения потребления ресурсов разница между использованием таймера в обычном режиме (конструктор Timer()) и в режиме демона (конструктор Timer(boolean isDaemon)) ?

Заранее благодарен за любую информацию. 

PM MAIL   Вверх
LSD
Дата 22.1.2016, 20:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 210
Всего: 538



Цитата(lazycat @  22.1.2016,  21:20 Найти цитируемый пост)
Как много ресурсов потребляет он в режиме ожидания (задача запланирована, но еще не начата) ?

Очень мало.


Цитата(lazycat @  22.1.2016,  21:20 Найти цитируемый пост)
Другими словами, как реализуется ожидание запуска запланированной задачи ?

Thread.sleep()
На тред усыпляется до момента Х.


Цитата(lazycat @  22.1.2016,  21:20 Найти цитируемый пост)
Есть ли с точки зрения потребления ресурсов разница между использованием таймера в обычном режиме (конструктор Timer()) и в режиме демона (конструктор Timer(boolean isDaemon)) ?

Нет.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
lazycat
Дата 22.1.2016, 20:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 227
Регистрация: 15.7.2007

Репутация: 1
Всего: 1



Большое спасибо за ответ!

Цитата(LSD @  22.1.2016,  20:29 Найти цитируемый пост)
Thread.sleep()
На тред усыпляется до момента Х.


Видимо я криво сформулировал свой вопрос. Я имел в виду ожидание в режиме запланированной задачи, а, следовательно, и выполнение метода Thread.sleep() реализуется Java-средствами или средствами операционной системы? Если провести аналогию с элементами интерфейса - это "lightweight" или "heavyweight" ?

(С вашей стороны логично будет отослать меня к документации, но, честное слово, искал и ничего не нашел в этом ключе).


PM MAIL   Вверх
mailer
Дата 23.1.2016, 11:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 20.10.2010

Репутация: нет
Всего: нет



Потоки в jvm реализуются нативными для каждой ОС функциями.

Этот ответ добавлен с нового Винграда - http://vingrad.com
PM MAIL   Вверх
LSD
Дата 24.1.2016, 23:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 210
Всего: 538



Цитата(lazycat @  22.1.2016,  21:42 Найти цитируемый пост)
Видимо я криво сформулировал свой вопрос. Я имел в виду ожидание в режиме запланированной задачи, а, следовательно, и выполнение метода Thread.sleep() реализуется Java-средствами или средствами операционной системы? Если провести аналогию с элементами интерфейса - это "lightweight" или "heavyweight" ?

(С вашей стороны логично будет отослать меня к документации, но, честное слово, искал и ничего не нашел в этом ключе).

В документации нет ответа на этот вопрос, потому что спецификация JVM не оговаривает как должны реализовываться потоки lightweight или heavyweight.
В принципе когда-то были реализации JVM с легковесными потоками. Но сейчас ситуация такова, что все актуальные реализации JVM используют тяжеловесные потоки.

Добавлено через 1 минуту и 58 секунд
Да, если так сильно беспокоит производительность то надо просто записать тестовый профайл выполнения. Будет интересно расскажу поподробней.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
lazycat
Дата 27.1.2016, 13:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 227
Регистрация: 15.7.2007

Репутация: 1
Всего: 1



Спасибо всем откликнувшимся


Цитата(LSD @  24.1.2016,  23:22 Найти цитируемый пост)
Да, если так сильно беспокоит производительность то надо просто записать тестовый профайл выполнения. Будет интересно расскажу поподробней.



Да, очень интересно

PM MAIL   Вверх
LSD
Дата 27.1.2016, 18:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 210
Всего: 538



Есть такая штука Java Virtual Machine Tool Interface (JVM TI), это инструменты для профайлеров и дебагеров. Там можно получить много чего, в том числе и данные по загрузке процессора. Есть проект Swiss Java Knife который умеет все эти данные собирать, в принципе в данном случае будет достаточно ttop который переодически снимает нагрузку на процессор (по каждому  треду). Можно посмотреть глазами, можно посмотреть код и написать свой мини профайлер и писать данные в лог.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
lazycat
Дата 17.2.2016, 21:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 227
Регистрация: 15.7.2007

Репутация: 1
Всего: 1



Большое спасибо за информацию !


Это сообщение отредактировал(а) lazycat - 17.2.2016, 21:33
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0741 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.