RequestQueueSize is a dynamic property, for which it’s name is very literal. It is the size of the queue of assets left to download for the first time.
Preloading does not increment this value if the asset exists in the DataModel, it bumps the asset up to the front of the list; the value gets incremented only if the asset isn’t there, because now you’re introducing a new asset to the cache.
I personally only rely on this as a lazy workaround for loading screens, but it’s not really the best idea. Depending on networks, devices and the server region, loading could take an abysmal amount of time. You can wait until DataModel.(Is)Loaded returns a true value, which will determine when the server finished replicating it’s assets to the client. After that, you can preload any assets you need immediately available, then dismiss the screen when this assets have loaded.
(Corrected a point or two)