In SLAM::ObserveLaser, we push raster map evaluations to an async thread pool under the assumption that the evaluations will conclude before an object on the stack is destroyed. However, this assumption does not always hold, especially when constructing maps of dense environments, causing segmentation faults.
The SLAMBelief class can be reworked to asynchronously evaluate these tasks at construction and store results in shared_futures.
In
SLAM::ObserveLaser
, we push raster map evaluations to an async thread pool under the assumption that the evaluations will conclude before an object on the stack is destroyed. However, this assumption does not always hold, especially when constructing maps of dense environments, causing segmentation faults.The SLAMBelief class can be reworked to asynchronously evaluate these tasks at construction and store results in
shared_future
s.