В C:Потокобезопасная символ строка в C
Если у меня есть 3 темы, 2 темы, которые добавляющая строка в глобальную строку полукокса (символ *), и 1 поток, который считывает данные из этого символьной строки ,
Предположим, что 2 потока добавили около 8 000 строк в секунду, а третий поток читает довольно часто. Есть ли вероятность, что они будут добавляться точно в одно и то же время и перезаписывать данные друг друга или читать в одно и то же время и получать неполную строку?
Как отмечает Том, «вполне вероятно, что это будет«, скорее всего, занижение », это будет ** **, особенно на многоядерной машине. –
@ Джонатан. Ты прав. Я обновил свой ответ, спасибо, указав, что вне – Glen
Привет, спасибо за ваши ответы, размер строки может быть около 100 символов, и я очищаю строку после каждого чтения. Я просто провел несколько тестов, и, как сказал Том, он перезаписывает еще один файл :( Я нахожусь в Linux. – 2009-08-24 14:50:50