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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> socket and threads, help 
:(
    Опции темы
__nazar__
  Дата 16.2.2008, 19:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Здраствуйте,
У меня возникла вот такая проблема:
Нужно ли самому производить синхронизацию потоков при доступе к сокету.
Приложение (ОС Linux) создайот сокет. В приложении работають несколько потоков которые записывают в сокет даные. Нужно ли их взаимно блокировать при доступе к сокету. smile 
PM MAIL   Вверх
Fin
Дата 16.2.2008, 21:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дракон->Спать();
**


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

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



Да нужно. Для доступа ко всем ограниченным ресурсам нужно делать блокировку. Только вопрос, а зачем сразу несколько потоков работают с одним сокетом?

Это сообщение отредактировал(а) Fin - 16.2.2008, 21:01


--------------------
Пролетал мимо.
PM MAIL   Вверх
__nazar__
Дата 16.2.2008, 21:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Дело в том что один поток записывает даные в сокет только тогда когда поступет сигнал с другого канала, а второй поток проверяет работоспособность сокета, он посылает внеполосовие дание. Может возникнуть вопрос почему первый поток не осуществляут проверку? Ето не делаетса потому что вся система доступа к сети создана ввиде класа и "первым" потоком является програма (клиент класа), а вторим метод класа.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Сети | Следующая тема »


 




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


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

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