来自UNIX® 环境中的高级编程:
对于
_PC_ASYNC_IO
、_PC_PRIO_IO
和_PC_SYNC_IO
,引用的文件不能是目录。
Name of option | Indicates ... |name argument
_POSIX_SYNC_IO |whether synchronized I/O can be used with |_PC_SYNC_IO
the associated file
所以我假设用法是
long return_value = pathconf("/a/path/filename",_PC_SYNC_IO)
.
看起来这是一种获取特定文件“设置”的方法。
这个东西可以设置成文件吗?我该如何设置?
同步 I/O对文件意味着什么?我的意思是,我不明白同步 I/O如何成为文件的设置?它不应该是编程方面的事情,而不仅仅是“设置”吗?
的结果
pathconf
可能因文件而异,对于某些参数可以给出(_PC_NAME_MAX
、_PC_ASYNC_IO
和其他一些参数),但对于大多数参数,结果是一个依赖于平台的常量。您检索使用的值pathconf
不是每个文件的设置,它们是系统的属性和文件的类型;你不能设置它们。在这种情况下,同步 I/O 指的是从文件到文件的同步读取和写入,由
O_SYNC
可以在open
调用时指定的相关标志控制。pathconf(..., _PC_SYNC_IO)
将告诉您是否支持这些标志(请注意,O_SYNC
无论如何,常规文件总是应该支持这些标志,无论 的结果如何pathconf
)。