SelectorThread обсуждение... - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Пользователи Календарь Все разделы прочитаны
Вернуться   Форум администраторов игровых серверов > Полезное / Common > Программирование / Programming > Java

Java В данном форуме вы сможете найти много полезной информации по платформе Java. Подробные статьи, исходные коды и конечно учебники как для новичков так и профессиональных Java разработчиков вы найдёте здесь. Если у вас есть вопрос или хотите поделится своими наработками, пожалуйста, делайте это в этой теме.

Ответ
Опции темы
Непрочитано 01.05.2012, 14:20   #1
Аватар для ALF.
Герой

Автор темы (Топик Стартер) SelectorThread обсуждение...

Ребят, недавно, при написании своего ВебСервера, разбирал этот SelectorThread, и наткнулся на 1 интересную вещь...

Зачем в основном потоке обработки ключей\событий (SelectionKey.OP_CONNECT и т д) после выбора ключа и т д, в нормальном состоянии стоит СЛИП?

Ладно при исключении...
Но зачем в нормальном потоке делать слип?
PHP код:
                try
                {
                    
Thread.sleep(_sc.SLEEP_TIME);
                }
                catch(
InterruptedException ie)
                {

                }
            }
            catch(
IOException e)
            {
                                  
ТРА ТАТАтут тоже слипно ничего против этого слипа я не имею)
            } 
Просто не знаю, и хочу услышать Ваш совет...
В своём веб-сервере я снес его нах, и получил в 2-3 раза лучший результат в быстродействии, по тестам ApachBench...
Как насчет живого сервера?
Стоит ли убирать?
И вообще зачем он там....?
Что может случится если убрать этот слип....
ALF. вне форума Отправить сообщение для ALF. с помощью ICQ Отправить сообщение для ALF. с помощью Skype™ Ответить с цитированием
Непрочитано 01.05.2012, 14:31   #2
Олдфаг

По умолчанию Re: SelectorThread обсуждение...

Профайлер бы запустил и посмотрел сколько selectNow() генерит мусора и нагрузку на CPU этого потока, если убран sleep.

sleep имеет смысл убирать если ты собрался переписывать логику выборки ключей из селектора, почитал бы по java nio, чтоль, в двух словах не объяснить. еще лучше, читать и смотреть реализации на примере xnio и netty.
G1ta0 вне форума Ответить с цитированием
Непрочитано 01.05.2012, 14:54   #3
Аватар для VISTALL
Illussion is real

По умолчанию Re: SelectorThread обсуждение...

Если б Runnable.run() вызывался б по мере поступления ключей - но да б убрать , а там там Цыкл - а сам селектор не дает сильную нагрузку (на вызов) - итог цыкл грузит 100% КПУ
__________________
consulo.io - Consulo - multi-language IDE
VISTALL вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 01.05.2012, 15:39   #4
Аватар для ALF.
Герой

Автор темы (Топик Стартер) Re: SelectorThread обсуждение...

Цитата:
Сообщение от VISTALL Посмотреть сообщение
Если б Runnable.run() вызывался б по мере поступления ключей - но да б убрать , а там там Цыкл - а сам селектор не дает сильную нагрузку (на вызов) - итог цыкл грузит 100% КПУ
Благодарю!
ALF. вне форума Отправить сообщение для ALF. с помощью ICQ Отправить сообщение для ALF. с помощью Skype™ Ответить с цитированием
Непрочитано 02.05.2012, 20:10   #5
Аватар для Хлорка
Пользователь

Post Re: SelectorThread обсуждение...

Да, пустой цикл в то-яме-то-канаве грузить ЦэПэ в сотню.
Хлорка вне форума Отправить сообщение для Хлорка с помощью ICQ Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выборы - обсуждение. L2-Scripts Курилка / Yak floor 21 28.02.2012 12:27
Aion EU - Обсуждение Nytrex Aion 20 17.07.2011 18:23
Обсуждение SunDev SoftTap Курилка / Yak floor 41 13.04.2011 19:22
Обсуждение AION X EMU Infinity Серверная часть 71 22.02.2011 14:51
Обсуждение раздела Java CHIPSET Java 7 22.10.2009 12:51


© 2007–2022 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 23:20. Часовой пояс GMT +3.

Вверх