Вернуться   CoderX :: Forums > Основные форумы > Курилка
Войти через OpenID

Курилка Флудим и шутим тут!

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
 
 
Опции темы Опции просмотра
Старый 02.04.2017, 03:39   #28
Местный
 
Регистрация: 22.10.2014
Сообщений: 122
Сказал Спасибо: 1
Имеет 8 спасибок в 7 сообщенях
alexov пока неопределено
По умолчанию

Цитата:
Сообщение от supernewbie Посмотреть сообщение
alexov, можно изловчиться и сделать один буфер на один поток, передавая этот буфер текущему боту с которым поток работает.
в итоге если ядер скажем 4, то это всего-лишь 4 * 64K байт на буферы
можно изловчиться и сделать 10-20 переменных во всей программе и переиспользовать их по мере освобождения) но это потребует такой нетривиальной логики которую ни один человек не осилит)

Ну а если серьезно - использовать на 4х ядерном процессоре только 4 потока, это хорошая идея, для этого и придумали асинхронное программирование. Я так и делаю. Но вот в чем загвоздка, при асинхронном программировании код превращается в последовательность из коллбэков, а порядком их исполнения рулит тредпул.

Так вот к чему это я. Если для каждого клиента создать полный контекст из данных которые ему нужны, включая буфер для сетевых данных, код получается простой и красивый, потому что нам не важно в каком порядке на самом деле исполняется код. Но как только мы заведем общий буфер для группы клиентов, сразу появляются ограничения на то как мы должны писать код, чтобы этот буфер не запороть. Не знаю как это понятнее объяснить, но я думаю что те кто уже пишет асинхронный код, должны понять.
alexov вне форума   Ответить с цитированием
 

  CoderX :: Forums > Основные форумы > Курилка



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

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


Часовой пояс GMT +4, время: 03:34.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!