This really seems like an XY problem. What are you trying to
accomplish that makes you want to use RAMDirectory at all? Why I'm
asking:
1> RAMDirectory is quite special-purpose, very rarely is it something
you should use
2> Java doesn't collect garbage when you close an object that
references it,
I want to release ram when i want ,
i have tired to close created reader, ram directory, and searcher given in
below;
ramDir = new RAMDirectory(FSDirectory.open(indexDir), IOContext.READ);
reader = DirectoryReader.open(ramDir);
searcher = new IndexSearcher(reader);
searcher = null;
reader.close()