rate limit most parameter_update subscriptions

- parameter updates can be quite expensive because they trigger nearly all modules to reload all of their parameters immediately
 - limit modules from updating faster than once per second
This commit is contained in:
Daniel Agar
2021-01-10 21:09:15 -05:00
committed by GitHub
parent 70e503cb91
commit 967d35a6b6
73 changed files with 212 additions and 122 deletions
@@ -225,14 +225,10 @@ void LandingTargetEstimator::update()
void LandingTargetEstimator::_check_params(const bool force)
{
bool updated = _parameterSub.updated();
if (_parameter_update_sub.updated() || force) {
parameter_update_s pupdate;
_parameter_update_sub.copy(&pupdate);
if (updated) {
parameter_update_s paramUpdate;
_parameterSub.copy(&paramUpdate);
}
if (updated || force) {
_update_params();
}
}