#include #include #include void LeakMemory(){ TFile *f = new TFile("/afs/cern.ch/user/c/clantz/public/ZDCBeamTestRun171.root"); TTree *tree=(TTree*)f->Get("tree"); MemInfo_t memInfo; //I have 20 branches of vectors that I care about in my tree, 20 that I don't int nCh = 20; int nBin = 1024; std::vector< std::vector< float > > vWF; std::vector< std::vector< float >* > pvWF; vWF .resize( nCh ); pvWF.resize( nCh ); for( uint ch = 0; ch < nCh; ch++ ){ pvWF[ ch ] = &vWF[ ch ]; tree->SetBranchAddress( Form( "RawSignal%d", ch ), &pvWF[ ch ] ); } for( int ev = 0; ev < tree->GetEntries(); ev++ ){ tree->GetEntry( ev ); if(ev%100 == 0){ gSystem->GetMemInfo(&memInfo); std::cout << "\r" << std::left << Form("Event %5d, RAM:%4.1f/%4.1fGB", ev, (double)memInfo.fMemUsed/1024, (double)memInfo.fMemTotal/1024 ) << std::flush; } } delete tree; delete f; }