Delete histograms from root file

Hi, everyone.
I have a root file including 300 histograms now, and I want to clear the file. I read the source code of TFile calss, and found a function called Delete(). It indicates that TFile::Delete(";") will delete all the objects in file and memory. I tried, and TFile::ls() showed that no histogram was in file. However, I found that the deleting was slow, and the size of root file did not change. Is it correct?or I did it in a wrong way?Thank you!

I may found the reason. The slow deleting may come from garbage collection. The histograms were not
deleted from root file. They were moved to free segments, so size of file did not change.

Is my understanding correct? and how to speed the deleting?