GTKMM 监控 I/O 示例 100% CPU 负载
Posted
技术标签:
【中文标题】GTKMM 监控 I/O 示例 100% CPU 负载【英文标题】:GTKMM Monitoring I/O example 100% CPU load 【发布时间】:2015-09-24 19:30:28 【问题描述】:我正在尝试来自here 的 Gtkmm 监控 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%。
我的问题是,这是一个错误还是一个已知问题,或者可能是一个非问题?
【问题讨论】:
【参考方案1】:所以我终于想出了如何降低 CPU 使用率,我在示例中更改了以下行:
read_fd = open("testfifo", O_RDONLY);
到:
read_fd = open("testfifo", O_RDWR);
希望这对某人有所帮助。
gtkmm 邮件列表上this thread 中的答案描述了正在发生的事情。
【讨论】:
以上是关于GTKMM 监控 I/O 示例 100% CPU 负载的主要内容,如果未能解决你的问题,请参考以下文章