我们正在尝试从连接到 linux 盒子的 2 个 USB 鼠标中读取数据(该数据用于机器人的里程计/定位)。所以我们需要不断地从每只鼠标中读取它移动了多少。问题是当鼠标不移动时,它不会发送任何数据,因此我们从中获取数据的文件流会阻止执行,因此程序无法进行里程计计算(其中涉及速度的时间测量) .
有没有办法在输入流上设置超时(我们在 C++ 中使用 ifstream 并从 /dev/input/mouse 读取),以便我们能够知道鼠标何时不移动,而不是等待接收事件?还是我们需要弄乱线程(arggh ...)?欢迎任何其他建议!
提前致谢!