我从opengroup.org阅读了两个手册页(ftw,nftw),所以我认为ftw()
和nftw()
不能保证线程安全。
但是我在man7.org上找到了另一个关于这些功能的page,其中说ftw()
是MT安全的,而nftw()
是MT-safe cwd
。
这些功能在此page中的线程安全异常列表中。
就目前而言,我仍然相信这些功能不能保证线程安全。但是我不知道为什么this说ftw()
是MT安全的。
man7.org的页面为什么说ftw()
是MT安全的?
它基于POSIX标准吗?
答案 0 :(得分:0)
POSIX说一个函数不是多线程安全的事实仅表示“不能保证它是多线程安全的”,因此您不能指望它是或不是。但是,这并不意味着禁止其实现多线程安全。实施可能总是会应用比标准要求更强的保证,只是不能应用较弱的保证。