ScriptableObject with references memory usage (help)

I’m using A scriptableobject to hold my references to textures and meshes. The idea was to load the scriptableobject when accessing an asset, then unload it to free up ram.

I tested it by referencing a huge texture and tried to load/unload the scriptableObject in runtime.

My problem is that the scriptableObject eats up my memory even before loading it (with Resources.Load), and any attempt to unload was unsuccessful (tried Destroy, Resources.UnloadAsset, Resources.UnloadUnusedAssets, and even GC.Collect at the end).

Is there a way to load/unload a scriptableobject that is referencing several large assets? or should i use another way to do this?

It turns out that it actually works.
All i needed to do was to test it on a build, not editor. Apparently editor loads everything in your project in memory, so loading/unloading doesn’t make a difference