![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
Боня |
|
||||||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 7.11.2011 Репутация: нет Всего: нет |
Всем доброго времени суток.
Имеется класс:
Имеется класс который создаёт множество потоков к примеру 100:
Но так же этот же класс создаёт ещё 1 поток совершенно другого класса:
Задача такова выполнять все потоки, но обязательно 45 раз всекунду выполнять поток(classSecond). Если всё оставить так как есть, то 45 раз в секунду не получается, т.к. программа постоянно скачет между потоками, и чем больше потоков типа Class_Thread тем меньше раз в секунду выполняется поток classSecond. Решение: Можно 45 раз в секунду усыплять все 100 потоков class1, пока выполняется classSecond, по завершению пробуждать. Если кто знает другой способ, к примеру как раскидать на ядра процессора. А если усыплять то как лучше, или может ещё что-то. Скажите пожалуйста. Заранее спасибо. Это сообщение отредактировал(а) Боня - 7.11.2011, 00:36 |
||||||
|
|||||||
aleksandy |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 260 Регистрация: 17.12.2006 Репутация: 4 Всего: 5 |
Second_Thread переписать на extends java.util.TimerTask и запускать его как-нибудь так:
|
|||
|
||||
Боня |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 7.11.2011 Репутация: нет Всего: нет |
aleksandy,
И тем немение при запуске по таймеру мне придётся остальные потоки усыплять? |
|||
|
||||
LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Подозреваю, что создавать столько потоков совсем не нужно. Скорее всего тебе нужен ThreadPoolExecutor и создавать таски для него. -------------------- 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. |
|||
|
||||
Боня |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 7.11.2011 Репутация: нет Всего: нет |
LSD
Я не мог раньше ответить. Спасибо за совет, я про ThreadPoolExecutor ранее не слышал. Почитаю возможно это поможет. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |