Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
[C++] Проблема, потоки и дескрипторы 23.08.06 17:43
Автор: DVA Статус: Незарегистрированный пользователь
|
Уважаемый All подсобите!
Проблемка:
Программа использует нити, в нитях окрывается popen и передаются данные в поток.
Дело в том что разные нити одновременно могут использовать одинаковые дескрипторы и происходит ошибка. Решил проблему путем блокировки критического места мутексами.
Вопрос:
Как назначаются дескрипторы в нитях, почему они совпадают?
Как добиться использования разных дескрипторов?
|
|
ни чё не понял, 23.08.06 22:28
Автор: + <Mikhail> Статус: Elderman
|
ни чё не понял,
про какие дескрипторы ты ведёшь речь?
|
| |
про FILE* handle; 23.08.06 23:22
Автор: DVA Статус: Незарегистрированный пользователь
|
> ни чё не понял, > про какие дескрипторы ты ведёшь речь?
про FILE* handle;
FILE* handle;
Pthread_mutex_lock(&fMutex);
if ((handle = popen(G->UpdateCmd, "w"))==NULL) {
err(e_wr,"Pipe open"_LINE_0);
} else {
...
if(pclose(handle)) err(e_ws,"Pipe close"_LINE_0);
}
Pthread_mutex_unlock(&fMutex);
}
|
|
|