Модераторы: feodorv
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Браузерный чат, незакрытые соединения 
:(
    Опции темы
vaddas
Дата 18.4.2008, 23:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Демон чата написан на С++, работает в роле веб сервера (фрейм чата где выводятся все исходящие сообщения), отправление сообщений выполняется добавлением в mysql исходящего сообщения (демон каждую секунду считывает таблицу и выводит сообщение)

Проблемма в том, при не правильном выходе из чата, т.е. просто закрыли вкладку соединение переходит в CLOSE_WAIT, как бы на СИ написать   чтоб соединение было закрыто принудительно при этом состоянии...


  smile 

ОС: Linux
PM MAIL   Вверх
vaddas
Дата 20.4.2008, 21:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Неужели никто не знает? :(

Код

                                if (FD_ISSET(currentC->get_socket_id(), &write_list) ) {
                                        /* writing content to a client*/
                                        currentC->set_active(1);
                                        if (currentC->get_status() == ONLINE)
                                                currentC->process_messages(messages, total_messages, new_messages, firstU, lastU, firstR, lastR);
                                        if (currentC->send() == -1) {
                                                /*remove client then*/
                                                remove_client(currentC, firstC, lastC,"cannot send data to the socket");                                                
                                                continue;
                                        }
                                } else
                                        currentC->set_active(0);


т.е. как я понял сдесь отправка все равно происходит в сокет (т.е. даже когда соединение находится в пассивном закртыие close_wait), как этого избежать?  smile 
PM MAIL   Вверх
vaddas
Дата 3.5.2008, 03:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



форум мертв (точка)
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Сети | Следующая тема »


 




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


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

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