Broken TDirectoryFile::FindObjectAny and TDirectoryFile::FindKeyAny

I think I misunderstood old statements
I thought I needed to use “FindObjectAny” because …
I remember that if I try to retrieve objects with “GetObject”, then always only the very recently retrieved “cycle” stays in memory (any previously retrieved “cycle” is automatically deleted from memory).

Is there a guarantee that “Get” will always leave in memory all “cycles” that I retrieve?

Another question is … “Get” will actually load the object into memory. Is there any easy way to “test” that a specific “cycle” exists in the file without retrieving the object itself? Unfortunately, TDirectoryFile::FindKeyAny behaves like TDirectoryFile::FindObjectAny when trying to “find cycles”.