Вопросы о поточной безопасности nftw () и ftw () - PullRequest
0 голосов
/ 24 октября 2018

Я прочитал две man-страницы ( ftw , nftw ) с opengroup.org, поэтому я подумал, что ftw() и nftw() не гарантируют безопасность потоков.

Но я нашел еще одну страницу об этих функциях на man7.org, где говорится, что ftw() безопасен для MT, а nftw() - MT-safe cwd.

.функции находятся в списке исключений безопасности потока, на этой странице .

Пока я все еще верю, что эти функции не гарантируют безопасность потока.Но мне интересно, почему это говорит, что ftw() безопасно для MT.

Почему на странице man7.org написано, что ftw() безопасно для MT?

Это основано на стандарте POSIX?

1 Ответ

0 голосов
/ 24 октября 2018

Тот факт, что POSIX говорит, что функция не является многопоточной, означает только то, что «она не гарантирована как многопоточная», так что вы не можете ожидать, что она будет или полагаться, что это так.Однако это не означает, что реализациям запрещено делать его многопоточным безопасным.Реализации всегда могут применять более строгие гарантии, чем требует стандарт, они просто не должны применять более слабые.

...