Fill histograms in parallel and write them on file. 
This example expresses the parallelism of the mt001_fillHistos.C tutorial with multiprocessing techniques.
 
const UInt_t nNumbers = 20000000U;
 
 
 
Int_t mtbb001_fillHistos()
 
{
   
   auto workItem = [](
UInt_t workerID) {
 
      
      TFile f(
Form(
"myFile_mtbb001_%u.root", workerID), 
"RECREATE");
 
      TH1F h(
Form(
"myHisto_%u", workerID), 
"The Histogram", 64, -4, 4);
 
      for (
UInt_t i = 0; i < nNumbers; ++i) {
 
         h.Fill(workerRndm.Gaus());
 
      }
      return 0;
   };
 
   
 
   
   return 0;
}
char * Form(const char *fmt,...)
 
A pseudo container class which is a generator of indices.
 
This class provides a simple interface to execute the same task multiple times in parallel,...
 
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.
 
void EnableThreadSafety()
Enables the global mutex to make ROOT thread safe/aware.
 
- Date
 - January 2016 
 
- Author
 - Danilo Piparo 
 
Definition in file mtbb001_fillHistos.C.