![]() |
Модераторы: feodorv |
![]() ![]() ![]() |
|
__nazar__ |
|
|||
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 4.2.2008 Репутация: нет Всего: нет |
Здраствуйте,
У меня возникла вот такая проблема: Нужно ли самому производить синхронизацию потоков при доступе к сокету. Приложение (ОС Linux) создайот сокет. В приложении работають несколько потоков которые записывают в сокет даные. Нужно ли их взаимно блокировать при доступе к сокету. ![]() |
|||
|
||||
Fin |
|
|||
![]() Дракон->Спать(); ![]() ![]() Профиль Группа: Участник Сообщений: 687 Регистрация: 4.1.2006 Репутация: нет Всего: 10 |
Да нужно. Для доступа ко всем ограниченным ресурсам нужно делать блокировку. Только вопрос, а зачем сразу несколько потоков работают с одним сокетом?
Это сообщение отредактировал(а) Fin - 16.2.2008, 21:01 -------------------- Пролетал мимо. |
|||
|
||||
__nazar__ |
|
|||
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 4.2.2008 Репутация: нет Всего: нет |
Дело в том что один поток записывает даные в сокет только тогда когда поступет сигнал с другого канала, а второй поток проверяет работоспособность сокета, он посылает внеполосовие дание. Может возникнуть вопрос почему первый поток не осуществляут проверку? Ето не делаетса потому что вся система доступа к сети создана ввиде класа и "первым" потоком является програма (клиент класа), а вторим метод класа.
|
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Сети | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |