linux, несколько процессов, штук 5-10, пишут в один и тот же файл который они открывают в режиме a+
(логи они туда пишут)
вопрос - будут ли они блокировать друг друга если скажем им одновременно захочется в это файл записать?
насколько этот файл их тормозит? или OS "умная" и всё правильно разруливает?
последовательность записей в принципе не так уж важна, в каждой строке есть дата-время.
можно ли каким то способом сказать OS что то типа "для этого файла не блокируй, пусть пишут себе в любой последовательности" ?
несколько процессов пишут в файл открытый как a+
-
Гость
Re: несколько процессов пишут в файл открытый как a+
ну в одну и ту же консоль несколько процессов могут писать, не блокируя друг друга - чем файл-то хуже... 
Re: несколько процессов пишут в файл открытый как a+
Они пишут же туда наверное обычно не напрямую, а через сислог?Гость писал(а):ну в одну и ту же консоль несколько процессов могут писать, не блокируя друг друга - чем файл-то хуже...
-
Гость
Re: несколько процессов пишут в файл открытый как a+
именно что напрямую.Ravinger писал(а): Они пишут же туда наверное обычно не напрямую, а через сислог?Впрочем напрямую тоже наверное можно, но, мне кажется, каша не исключена.
open( имя_файла, a+ ) и поехали
каша не очень страшно, в каждой строке есть время и process ID
страшно что будут тормоза
Re: несколько процессов пишут в файл открытый как a+
там каша будет не из строк, а из частей строк, слова перемешаны и буквы, никто не обещает, что строчки будут целымиГость писал(а):именно что напрямую.Ravinger писал(а): Они пишут же туда наверное обычно не напрямую, а через сислог?Впрочем напрямую тоже наверное можно, но, мне кажется, каша не исключена.
open( имя_файла, a+ ) и поехали
каша не очень страшно, в каждой строке есть время и process ID
страшно что будут тормоза
"Форум не читается в Гугле." (Irina123)
Переубедить вас мне не удастся, поэтому сразу перейду к оскорблениям.
Переубедить вас мне не удастся, поэтому сразу перейду к оскорблениям.
Re: несколько процессов пишут в файл открытый как a+
Ага, именно это имел ввиду.sss писал(а):там каша будет не из строк, а из частей строк, слова перемешаны и буквы, никто не обещает, что строчки будут целымиГость писал(а):именно что напрямую.Ravinger писал(а): Они пишут же туда наверное обычно не напрямую, а через сислог?Впрочем напрямую тоже наверное можно, но, мне кажется, каша не исключена.
open( имя_файла, a+ ) и поехали
каша не очень страшно, в каждой строке есть время и process ID
страшно что будут тормоза
-
Гость
Re: несколько процессов пишут в файл открытый как a+
Вот тут обещают отсутствие "каши" при определенных условиях:
"When appending to files from multiple threads or processes, the fwrites to that file are atomic under the condition that the file was opened in appending mode, the string written to it does not exceed the filesystem blocksize and the filesystem is local. "
http://stackoverflow.com/questions/2710 ... ingle-file" onclick="window.open(this.href);return false;
но откуда они это взяли? где это гарантируется? fwrite?
"When appending to files from multiple threads or processes, the fwrites to that file are atomic under the condition that the file was opened in appending mode, the string written to it does not exceed the filesystem blocksize and the filesystem is local. "
http://stackoverflow.com/questions/2710 ... ingle-file" onclick="window.open(this.href);return false;
но откуда они это взяли? где это гарантируется? fwrite?
-
Гость
Re: несколько процессов пишут в файл открытый как a+
ну собственно вот:
http://stackoverflow.com/questions/1154 ... ic-in-unix" onclick="window.open(this.href);return false;
каши не будет.
http://stackoverflow.com/questions/1154 ... ic-in-unix" onclick="window.open(this.href);return false;
каши не будет.