Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Qt] Клиент-серверный чат 
:(
    Опции темы
kosmonaFFFt
Дата 14.12.2009, 21:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Доброго времени суток...
Надобно мну написать клиет-серверный чат, решил делать на Qt...
Требуется: запускаешь сервер - он висит и отсылает данные, пришедшие
с одного клиента, всем остальным, количество клиетов неограничено...
Клиент же просто посылает/принимает данные...

Подскажите пожалуйста, как это лучше и проще организовать: синхронные или асинхронные сокеты юзать,
как быть с многопоточностью - я так подозреваю, что одного потока явно не хватит... А так же как быть с 
подсоединением/отсоединением клиентов?
В общем хотелось бы увидеть пример алгоритм работы такого сервера, с учетом возможностей/особенностей Qt...

Заранее спасибо...


--------------------
user posted image
PM MAIL ICQ   Вверх
Kipter
Дата 14.12.2009, 21:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Я так понимаю что если вопрос поставлен так как вы его поставили то чат ваш скорее всего для какой нибудь Домашней работы, курсовой или чего либо еще.
Ибо сейчас новые чаты вводить не модно, есть куча готовых протоколов общения и сейчас лидер чат общения наверное Jabber
т.е сервер писать уже нет надобности.

если же все-таки надо писать сервер, то много-поточность ты не ощутишь даже если посадишь читаться весь свой курс-поток студентов =)
поэтому если в задании нет ничего о много-поточности то лучше забей на нее.

Цитата

Подскажите пожалуйста, как это лучше и проще организовать: синхронные или асинхронные сокеты юзать

в Qt сокеты по умолчанию асинхронны, они испускают сигнал =) когда приходят данные.
Используй асинхронный способ работы с ними ибо QT тебе и так уже предоставляет конечный автомат.


Цитата(kosmonaFFFt @  14.12.2009,  21:19 Найти цитируемый пост)
В общем хотелось бы увидеть пример алгоритм работы такого сервера, с учетом возможностей/особенностей Qt...

\Qt\examples\network\network-chat
PM MAIL   Вверх
kosmonaFFFt
Дата 15.12.2009, 19:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(Kipter @  14.12.2009,  21:55 Найти цитируемый пост)
Я так понимаю что если вопрос поставлен так как вы его поставили то чат ваш скорее всего для какой нибудь Домашней работы, курсовой или чего либо еще.

ага... smile Только не для себя делаю, а "на заказ"...

Щас посмотрю примеры, надеюсь разберусь..



--------------------
user posted image
PM MAIL ICQ   Вверх
SABROG
Дата 15.12.2009, 21:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Hacker
****


Профиль
Группа: Завсегдатай
Сообщений: 2481
Регистрация: 18.9.2006

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



Вот чатик интересный, думаю можно многое из него почерпнуть: http://simple.impomezia.com

Главное потом спасибу сказать разработчику, если твой чат тебе деньги принесет.


--------------------
Национальная группа Russian Federation на QtCentre.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets"
JackYF
Любитель
  • В заголовке темы в квадратных скобках обозначьте используемую вами библиотеку, например: [QT],[GTK],[wx].
  • Если вопрос актуален только для некоторой версии библиотеки, либо, если вы пользуетесь не самой последней версией, укажите это. Например: [QT4], [GTK2].
  • Все начинающие изучать Qt - не забудьте зайти сюда.
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • В вопросе укажите полную версию версию библиотеки, а также все дополнительные используемые программные пакеты.
  • Не забывайте пользоваться кнопкой "Код".
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема »


 




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


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

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