diff --git a/services/native/include/usb_service.h b/services/native/include/usb_service.h index 61b66be3cf7ea35449bfea766ab1128b63b869cd..70959c0d0a3bc856c03b6302ed6435de89b84e86 100644 --- a/services/native/include/usb_service.h +++ b/services/native/include/usb_service.h @@ -288,6 +288,7 @@ private: int32_t commEventRetryTimes_ = 0; std::mutex mutex_; std::mutex serialPidVidMapMutex_; + std::mutex unloadSelfTimerMutex_; #ifdef USB_MANAGER_FEATURE_HOST std::shared_ptr usbHostManager_; #endif // USB_MANAGER_FEATURE_HOST diff --git a/services/native/src/usb_service.cpp b/services/native/src/usb_service.cpp index e3cbdfa67dacce30fbabec43d1823d7c973bbd87..073856ccfad788f6d86c83fa2747aa31dbd9d55b 100644 --- a/services/native/src/usb_service.cpp +++ b/services/native/src/usb_service.cpp @@ -2396,6 +2396,7 @@ void UsbService::UnLoadSelf(UnLoadSaType type) return; } #endif // USB_MANAGER_FEATURE_DEVICE + std::lock_guard guard(unloadSelfTimerMutex_); unloadSelfTimer_.Unregister(unloadSelfTimerId_); unloadSelfTimer_.Shutdown();