13const UInt_t nNumbers = 20000000U;
18Int_t mt001_fillHistos()
26 auto workItem = [](
UInt_t workerID) {
29 TFile f(
Form(
"myFile_mt001_%u.root", workerID),
"RECREATE");
30 TH1F h(
Form(
"myHisto_%u", workerID),
"The Histogram", 64, -4, 4);
31 for (
UInt_t i = 0; i < nNumbers; ++i) {
32 h.Fill(workerRndm.Gaus());
38 std::vector<std::thread> workers;
41 for (
auto workerID :
ROOT::
TSeqI(nWorkers)) {
42 workers.emplace_back(workItem, workerID);
46 for (
auto &&worker : workers)
char * Form(const char *fmt,...)
A ROOT file is a suite of consecutive data records (TKey instances) with a well defined format.
1-D histogram with a float per channel (see TH1 documentation)}
Random number generator class based on M.
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...
void EnableThreadSafety()
Enables the global mutex to make ROOT thread safe/aware.