signals like DescendantAdded won’t actually disconnect until the object it is associated with is removed, regardless if the script object is still present in the game.
Connections will disconnect when a script is destroyed, but not the main Lua thread itself.
If you have an infinite loop in the script, deleting the script will not stop that loop.
That article is admittedly out of date, and I do want to go back and work on it at some point. I think the point I was really trying to nail home with that article is that you shouldn’t keep object references lying around if you aren’t using them anymore.
Right, I guess it does stop the Lua thread if you destroy the script.
However, it will continue to run if you set the script’s parent to nil. I believe this is what Studio’s delete option does (so that changes can be undone)