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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [named pipe] теряется доступ 
:(
    Опции темы
Alix36
Дата 1.5.2012, 22:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



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

Вопрос, насколько многозадачны именованные каналы? мог я упереться в технологические ограничения, или тут причина только моя криворукость?

кусок кода, слушатель канала
Код

 while(1){
        HANDLE handle_to_pipe = CreateNamedPipe(pipe_name,
                     PIPE_ACCESS_DUPLEX,
                    PIPE_TYPE_MESSAGE | PIPE_READMODE_MESSAGE | PIPE_WAIT,
                    PIPE_UNLIMITED_INSTANCES,
                     buf_size,
                    buf_size,
                    0,
                    NULL);
        if(handle_to_pipe == INVALID_HANDLE_VALUE)
        {
            Log("Can't create pipe!");
            return 0;
        }
        bool connection_flag = ConnectNamedPipe(handle_to_pipe, NULL);
        if(connection_flag)
        {
            succession_flag = ReadFile(handle_to_pipe, request, buf_size * sizeof(TCHAR),
                           &read_bytes, NULL);
                           // обработчик
        }
        else
            CloseHandle(handle_to_pipe);
        }


Писатель
Код

      HANDLE handle_to_pipe = CreateFile(pipe_name, GENERIC_READ | GENERIC_WRITE,
                       0, NULL, OPEN_EXISTING, 0, NULL);
    if(handle_to_pipe == INVALID_HANDLE_VALUE)
    {
                ShowMessage("Неудалось отправить сообщение");
    }
        bool succession_flag = WriteFile(handle_to_pipe, buffer, buf_size, &written_bytes, NULL);
    if(!succession_flag)
    {
                ShowMessage("Неудалось отправить сообщение");
        }
        CloseHandle(handle_to_pipe);



--------------------
Наши лица как дым, И никто не узнает как мы победим. (С)Пикник.
PM MAIL   Вверх
Олег2005
Дата 1.5.2012, 22:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Не думаете ли вы, что тема эта не сетевое программирование?
Это скорее WINAPI.
Перенести?
PM MAIL WWW MSN   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Сети | Следующая тема »


 




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


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

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