c++ - 交错执行两个 while 循环

标签 c++ while-loop pthreads

我有两个传感器,需要持续监控。两个传感器的内部工作方式不同,我需要不断检查两者,如下所示。

int sensorA(){
    while (true) {
    // read sensor A
    cout<<"sensorA \n";
  }
}
int sensorB(){
    while (true) {
    // read sensor B
    cout<<"sensorB \n";
  }
}

我的问题是如何确保以交错方式读取两个传感器?就像读取 sensorA,然后是 SensorB,然后是 Sensor A 等。

最佳答案

在同一个循环中读取两者?

int sensorA();
int sensorB();
while(true){
    //read A
    count<<"sensor A \n";
    //read B
    coutn<<"sensor B \n";
}

如果您需要它们被持续读取并且由于某种原因不能承受单个传感器读取之间的延迟,那么您需要为每个传感器创建一个线程。

关于c++ - 交错执行两个 while 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17062210/

相关文章:

c++ - 为什么我点击的次数越多,我的 qt 应用程序就越慢?

java - 如何在读取字符串时跳出循环?

c++ - 如何用 pthread 捕获堆栈溢出?

c++ - 使用 googletest 对两个 map 进行彻底的平等测试

python - 将 numpy.ndarray 转换为 opencv cv::Mat

c++ - 将 SDL 库添加到我的程序中

c++ - 用 while 循环替换 for 循环时我做错了什么?

r - 一次随机填充一个矩阵

c++ - __POSIX_VISIBLE 正在破坏我在 cygwin 上的 pthreading

android - 在 Android 中查找进程线程对资源(CPU 和内存)的使用情况