TRT_BaseElement continue MT refactoring: Use CachedValue instead of mutable/mutex
ATLASRECTS-5781 (ATR-22378) : Breaking in parts as trying to do all thing together back fired ....
The main changes:
- mutable std::vector<const Trk::Surface*> m_surfaces ATLAS_THREAD_SAFE; // Guarded by m_mutex
- mutable std::mutex m_mutex;
becomes
CxxUtils::CachedValue<std::vector<const Trk::Surface*>> m_surfaces;
Use a helper function for setting the "straw" caches.
- Use ovverride/final/remove virtual where applicable/possible.
Mentiong @oda
Merge request reports
Activity
This merge request affects 1 package:
- InnerDetector/InDetDetDescr/TRT_ReadoutGeometry
This merge request affects 3 files:
- InnerDetector/InDetDetDescr/TRT_ReadoutGeometry/TRT_ReadoutGeometry/TRT_BaseElement.h
- InnerDetector/InDetDetDescr/TRT_ReadoutGeometry/TRT_ReadoutGeometry/TRT_BaseElement.icc
- InnerDetector/InDetDetDescr/TRT_ReadoutGeometry/src/TRT_BaseElement.cxx
added InnerDetector master review-pending-level-1 labels
CI Result SUCCESS (hash c8c81dbe)Athena AthSimulation AthGeneration AnalysisBase externals cmake make required tests optional tests Full details available on this CI monitor view
Athena: number of compilation errors 0, warnings 0
AthSimulation: number of compilation errors 0, warnings 0
AthGeneration: number of compilation errors 0, warnings 0
AnalysisBase: number of compilation errors 0, warnings 0
For experts only: Jenkins output [CI-MERGE-REQUEST-CC7 24072]Looks fine, but asking L2 to double check as I am not very familiar with multithreading.
Cheers Nathan (L1)
Edited by Nathan Peter Readioffadded review-pending-level-2 label and removed review-pending-level-1 label
added review-approved label and removed review-pending-level-2 label
mentioned in merge request !38652 (merged)
mentioned in commit bb16411c
added sweep:ignore label