!126 修改EventRunner调用,删除多余代码

Merge pull request !126 from SUE/master
This commit is contained in:
openharmony_ci 2022-04-07 09:39:52 +00:00 committed by Gitee
commit 72202d63a1
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
2 changed files with 5 additions and 28 deletions

31
frameworks/native/sensor/src/sensor_data_channel.cpp Executable file → Normal file
View File

@ -35,12 +35,9 @@ namespace Sensors {
using namespace OHOS::HiviewDFX;
using namespace OHOS::AppExecFwk;
std::shared_ptr<MyEventHandler> SensorDataChannel::eventHandler_;
std::shared_ptr<AppExecFwk::EventRunner> SensorDataChannel::eventRunner_;
namespace {
constexpr HiLogLabel LABEL = { LOG_CORE, SensorsLogDomain::SENSOR_NATIVE, "SensorDataChannel" };
// max 100 data in cache buffer
constexpr uint32_t STOP_EVENT_ID = 0;
} // namespace
int32_t SensorDataChannel::CreateSensorDataChannel(DataChannelCB callBack, void *data)
@ -74,41 +71,23 @@ int32_t SensorDataChannel::InnerSensorDataChannel()
listener->SetChannel(this);
auto myRunner = AppExecFwk::EventRunner::Create(true);
CHKPR(myRunner, ERROR);
auto handler = std::make_shared<MyEventHandler>(myRunner);
CHKPR(handler, ERROR);
eventHandler_ = std::make_shared<MyEventHandler>(myRunner);
CHKPR(eventHandler_, ERROR);
int32_t receiveFd = GetReceiveDataFd();
auto inResult = handler->AddFileDescriptorListener(receiveFd, AppExecFwk::FILE_DESCRIPTOR_INPUT_EVENT, listener);
auto inResult = eventHandler_->AddFileDescriptorListener(receiveFd,
AppExecFwk::FILE_DESCRIPTOR_INPUT_EVENT, listener);
if (inResult != 0) {
SEN_HILOGE("AddFileDescriptorListener fail");
return ERROR;
}
eventHandler_ = handler;
eventRunner_ = myRunner;
int64_t delayTime = 100;
int64_t param = 0;
bool sendEventResult = eventHandler_->SendEvent(STOP_EVENT_ID, param, delayTime);
if (!sendEventResult) {
SEN_HILOGE("EventHandler SendEvent fail");
return ERROR;
}
int32_t runResult = eventRunner_->Run();
if (!runResult) {
SEN_HILOGE("EventRunner run fail");
return ERROR;
}
return ERR_OK;
}
int32_t SensorDataChannel::DestroySensorDataChannel()
{
std::lock_guard<std::mutex> eventRunnerLock(eventRunnerMutex_);
CHKPR(eventHandler_, ERROR);
CHKPR(eventRunner_, ERROR);
int32_t receiveFd = GetReceiveDataFd();
eventHandler_->RemoveFileDescriptorListener(receiveFd);
CHKPL(eventHandler_);
eventHandler_ = nullptr;
eventRunner_->Stop();
eventRunner_ = nullptr;
// destroy sensor basic channelx
return DestroySensorBasicChannel();
}

View File

@ -285,13 +285,11 @@ float GeomagneticField::ObtainGeomagneticDip()
double GeomagneticField::ToDegrees(double angrad)
{
std::lock_guard<std::mutex> geomagneticLock(mutex_);
return angrad * 180.0 / M_PI;
}
double GeomagneticField::ToRadians(double angdeg)
{
std::lock_guard<std::mutex> geomagneticLock(mutex_);
return angdeg / 180.0 * M_PI;
}