#include #include #include #include int main() { TFile f("test.root","RECREATE"); for(uint i=0;i<200;i++) { std::cout << i << std::endl; TDirectory *d=f.mkdir(TString::Format("selection%d",i).Data()); for(uint j=0;j<200;j++) { TH1F *h=new TH1F(TString::Format("test%d",j),"",10,-3,3); h->FillRandom("gaus"); h->SetDirectory(d); } } clock_t start = std::clock(); std::cout << "Start writing" << std::endl; f.Write(); clock_t write = std::clock(); std::cout << "Start closing" << std::endl; f.Close(); clock_t close =std::clock(); double elapsed_secs_1 = double(write - start) / CLOCKS_PER_SEC; double elapsed_secs_2 = double(close - write) / CLOCKS_PER_SEC; std::cout << "Time to write: " << elapsed_secs_1 << " s" << std::endl; std::cout << "Time to close: " << elapsed_secs_2 << " s" << std::endl; return 0; }