如何允许案例运行N次

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何允许案例运行N次相关的知识,希望对你有一定的参考价值。

我在SDK上运行一些C ++代码,该代码在发生特定事件时使用switch语句。我正在处理当蓝牙信号的信号强度发生变化时会发生的情况,它将报告新值。我只希望这次报告N次而不是连续报告,但我怎么能实现这一点?

case BLE_GAP_EVT_RSSI_CHANGED:
    sd_ble_gap_rssi_get(p_ble_evt->evt.gap_evt.conn_handle, &RSSI);
    printf("
RSSI =%d dBm", RSSI);
    break;
答案
static int rssi_changed_counter = 0;

switch( /* ... */ ) {
// ...

case BLE_GAP_EVT_RSSI_CHANGED:
    if(rssi_changed_counter < N) {

        // ...

        ++rssi_changed_counter;
    }
    break;

// ...
}
另一答案

这不是关于蓝牙,或信号,或关于使case运行N次。

这是关于在满足某些条件后停用一段代码。

你的条件是你的代码已经运行了N次。

您希望您的代码在第N + 1次(并且可能在此之后)执行不同的操作。

执行此操作的最佳方法取决于我们无法看到的代码。它可以像计数器和if声明一样简单。它可能是函数指针的解绑定。它可能是从某些第三方库中删除事件触发器。这是你的选择。

以上是关于如何允许案例运行N次的主要内容,如果未能解决你的问题,请参考以下文章

(Cocoa 错误 3840。)”(JSON 文本没有以数组或对象开头,并且允许未设置片段的选项。)

AVKit – 视频片段仅循环 2 次

linux打开终端如何启动scala,如何在终端下运行Scala代码片段?

条件片段和导航重用

java 简单的代码片段,展示如何将javaagent附加到运行JVM进程

将数据从Activity发送到Fragment - 如何?