4

我读到 eventfd 是有效的,因为内核会通知用户进程有关文件描述的事件。我看到了它的例子

http://graphics.sci.ubu.ac.th/api/man-html/htmlman2/eventfd.2.html

  1. 我看到了两个论点:
    a。一个是 unsigned int initval,它是内核计数器。我怎么用这个?
    湾。int flags,它的作用是什么?
  2. 什么是角色,我在哪里可以使用它?

我看到了例子,但它的用途无法理解。

为什么需要它?

4

1 回答 1

1

查看eventfd的详细手册页,特别注意以下内容:

  • eventfd() 示例演示了父子进程对之间的 IPC(进程间通信)。

  • initval是 eventfd 中的“内置”计数器
    检查行为read(), write(), poll(), select()以查看计数器的值如何影响它们在 eventfd 上的行为。

  • flags参数决定 eventfd 的语义
    根据您的内核版本,可以从 和 中选择EFD_CLOEXEC以下EFD_NONBLOCK标志EFD_SEMAPHORE

于 2013-07-30T02:32:58.927 回答