catch mutex when notify sampling rate changed, otherwise signal may be lost

Change-Id: Ib52f26e731808ecbe5fd2a53fcd8a47ab3882902
Signed-off-by: sangweilin <sangweilin@xiaomi.com>
This commit is contained in:
sangweilin
2023-03-19 14:28:53 +08:00
committed by weilin sang
parent b1b8b68316
commit e1e361ed43

View File

@@ -76,6 +76,7 @@ void Sensor::batch(int64_t samplingPeriodNs) {
static_cast<int64_t>(mSensorInfo.minDelay) * 1000,
static_cast<int64_t>(mSensorInfo.maxDelay) * 1000);
std::unique_lock<std::mutex> lock(mRunMutex);
if (mSamplingPeriodNs != samplingPeriodNs) {
mSamplingPeriodNs = samplingPeriodNs;
// Wake up the 'run' thread to check if a new event should be generated now