Fix thread-unsafety in Monopole code, G4mplEquationSetup class - Monopole MT ...
Fix thread-unsafety in Monopole code, G4mplEquationSetup class - Monopole MT validation [ATLASSIM-4182] G4mplEquationSetup class was implemented as a singleton, so it was not thread-safe. This affected MT simulation - with more than 1 thread: the simulation was aborted for illegal values of energy, momentum and/or time. Added the #ifdef G4MULTITHREADED directive to handle the multithreaded case. One instance of the class will be created per each thread and stored in a tbb::concurrent_unordered_map that is hashed with the threadID number.
Loading
Please register or sign in to comment