Do I have to always disconnect run service?

Heya, quite curious on something, would I always have to ensure I disconnect runservice connections even if a script containing them gets removed? In this case, as we all know, the connection is linked to a service, would I be fine doing them in while loops and expect them to get cleaned up? Are they removed like instance connections when the script containing them is removed? Would I always have to disconnect them no matter what due to memory leaks? Insight is appreciated, thanks!

Not disconnecting connections isn’t detrimentally harmful to your game (unless you have a huge number of open connections) so leaving it still connected will not destroy your game. However, it’s good practice to ensure all of your connections are properly and safely cleaned up just incase there is a memory leak.

In conclusion, you don’t have to, but it’s recommended to.

I would just like to know about runservice connections in particular, for the rest I usually rely on them getting garbage collected.

Like MAYBE it’s the same and they get cleaned up but I’d just like to be on the safer side and know for certain about runservice connections.

You can test it yourself. Make a connection to run service with a print in it then call destroy on the script and see what happens. Notice how calling destroy on a script may have different results from manually deleting it.