C &引用;peek";转换为eventfd内部计数器值而不更改

C &引用;peek";转换为eventfd内部计数器值而不更改,c,posix,file-descriptor,C,Posix,File Descriptor,维护一个uint64_t计数器,该计数器每次写入时增加,每次从中读取时重置为零(如果用作EFD_信号量,则减少1)。是否可以在不更改eventfd内部计数器值的情况下查看其值 例如,您也可以使用“cat”命令在终端中检索它,其中“eventfd count”是计数器值: $ cat /proc/<pid>/fdinfo/<efd> pos: 0 flags: 02 mnt_id: 10 eventfd-count: 40 $cat/p

维护一个uint64_t计数器,该计数器每次写入时增加,每次从中读取时重置为零(如果用作EFD_信号量,则减少1)。是否可以在不更改eventfd内部计数器值的情况下查看其值

例如,您也可以使用“cat”命令在终端中检索它,其中“eventfd count”是计数器值:

$ cat /proc/<pid>/fdinfo/<efd>
pos:    0
flags:  02
mnt_id: 10
eventfd-count:               40
$cat/proc//fdinfo/
位置:0
国旗:02
mnt_id:10
事件数:40

我已经可以将
/proc//fdinfo/
作为文件读取并解析响应,但我希望在实际的eventfd资源上有一种更直接的方法。这可能吗

否-根据从内核版本4.20开始的版本,查看/proc中的条目是查看内部值而不影响内部值的唯一方法

@JSON除了您发现的读取/proc//fdinfo之外,没有其他方法可以做到这一点/