5

我正在尝试学习 linux api,但某些函数名称(至少对我而言)似乎很麻烦。

谁能向我解释一下 pwrite/pread 中的首字母 p 代表什么?

4

2 回答 2

11

我只是猜测,但由于在文件pread()pwrite()的指定位置读取或写入,我会假设“p”代表“位置”,如“位置读取”。

两者read()pread()都是 POSIX 标准的一部分(参见例如http://www.unix.com/man-page/POSIX/3posix/pread/),因此我不认为“p”代表“POSIX”。

但也许这是完全错误的!

于 2013-07-26T09:33:00.563 回答
1

p 在 pread 和 pwrite 指的是POSIX

“p”变体与读写相比的两个区别是:

  • “p”变体采用偏移量进行读取,因此它们独立于当前文件指针。这使得同时从多个线程读取/写入变得更加容易。
  • “p”变体仅适用于可搜索文件(即真实文件,而不是管道、套接字或设备)。
于 2013-07-26T09:25:38.107 回答