Why does it take as long to tear down preview geometry as creating it?

I’m sure there’s a good reason, but I’m curious. I have a file with several different preview modes; the fastest modes are for twiddling knobs and getting rough approximations in 50ms so I have a “live” control. The slowest modes create all of the final details and take 60+ seconds.

What’s interesting is that switching from slowest to fastest takes about 60 seconds, as expected for creating all of that geometry. But switching from fastest to slowest also takes about 60 seconds, presumably to destroy the preview geometry.

This seems odd to me… I’d expect Grasshopper (or Rhino) to be able to create new geometry very quickly, mark old geometry as expired, and destroy/deallocate in the background. I’m sure this comes down to app architecture or .Net or something, but I’m curious if anyone knows the backstory, and whether it might improve in the future.