fix bug of handle in trafficlight

This commit is contained in:
zhongchao
2021-11-21 19:48:32 +08:00
parent 36df7e3ab6
commit 8fd6d6ee74
2 changed files with 18 additions and 6 deletions

View File

@@ -86,17 +86,30 @@ class MogoTrafficLightManager : IMogoCarLocationChangedListener2 {
//stop loop traffic light
trafficLightNetWorkModel.cancelRequestTrafficLight()
//未查到红绿灯加入2秒延时请求路口ID
mThreadHandler?.sendEmptyMessageDelayed(
MSG_WHAT_LOOP_SEARCH_CROSS_ROAD,
2_000L
)
mThreadHandler?.let { handler ->
if (handler.hasMessages(MSG_WHAT_LOOP_SEARCH_CROSS_ROAD)) {
handler.removeMessages(MSG_WHAT_LOOP_SEARCH_CROSS_ROAD)
mThreadHandler?.sendEmptyMessageDelayed(
MSG_WHAT_LOOP_SEARCH_CROSS_ROAD,
2_000L
)
}
}
})
}
}, {
//stop loop traffic light
trafficLightNetWorkModel.cancelRequestTrafficLight()
//刚经过红绿灯加入3秒延时请求路口ID
mThreadHandler?.sendEmptyMessageDelayed(MSG_WHAT_LOOP_SEARCH_CROSS_ROAD, 3_000L)
mThreadHandler?.let {
if (it.hasMessages(MSG_WHAT_LOOP_SEARCH_CROSS_ROAD)) {
it.removeMessages(MSG_WHAT_LOOP_SEARCH_CROSS_ROAD)
mThreadHandler?.sendEmptyMessageDelayed(
MSG_WHAT_LOOP_SEARCH_CROSS_ROAD,
3_000L
)
}
}
})
mThreadHandler?.sendEmptyMessageDelayed(MSG_WHAT_LOOP_SEARCH_CROSS_ROAD, 5_000L)
}

View File

@@ -38,7 +38,6 @@ class TrafficLightThreadHandler : Handler {
when (msg.what) {
MSG_WHAT_LOOP_SEARCH_CROSS_ROAD -> {
//handler轮询后续从地图处获取到车道线(前提获取车道线没有异步调用),来优化轮询时长
Logger.d(TrafficLightConst.MODULE_NAME,"MSG_WHAT_LOOP_SEARCH_CROSS_ROAD")
sendEmptyMessageDelayed(MSG_WHAT_LOOP_SEARCH_CROSS_ROAD,1_000L)
loopSearchCrossRoad?.invoke()
}