В дополнение:
Я не преоткрываю pipe как FILE каждый раз когда мне туда хочется чего-то записать или что-то прочитать.
Я открываю его один раз во время инициализации новой нити.
Недавно я нагуглил, что так делать не следует.... Это так? =(
Я не могу понять как заставить нить приостановится на время выполнения функции fputs(), пока данные не окажутся в pipe, чтобы главная нить сервера могла прочесть выходные данные нити-сессии из этого pipe.
Как я предполагаю след. код должен гарантировать мне это:
Код:
int write_to_pipe( ... )
{
fdopen ( ... );
fputs ( ... );
fclose( ... );
};
А можно ли сделать так, чтобы не переоткрывать pipe каждый раз при записи и чтении?