我正在尝试here中的Gtkmm Monitoring I / O示例。 在将某些内容写入fifo后,CPU负载将达到100%。
示例链接中显示的代码是我用于测试(复制/粘贴)的代码,我只删除了build.config.h头来编译它。
我使用以下方法编译它:
g++ -Wall -o test main.cc `pkg-config gtkmm-3.0 sigc++-2.0 --cflags --libs`
将代码转换为Gtkmm 2后行为相同,在将某些内容写入fifo之后CPU负载仍然达到100%。
我的问题是,这是一个错误或已知问题,还是一个非问题?
答案 0 :(得分:1)
所以我终于想出了如何降低CPU使用率,我在示例中更改了以下行:
read_fd = open("testfifo", O_RDONLY);
为:
read_fd = open("testfifo", O_RDWR);
希望这有助于某人。
gtkmm邮件列表中this thread的答案描述了正在发生的事情。