I don't think it is based on their "own discreation" rather its based on forum rules.
Me neither, and if mods could or did lock threads based on factors other than forum rules, a shit storm of chaos would probably ensue. My guess is that most of the threads they lock are garbage ones that should never have been started in the first place or were ones that got reported by someone for breaking a rule.
As far as mods giving a reason why, I don't think that's ever going to happen even if I thought it was a good idea, which I don't. They've got way too much to handle as it is without having to justify their actions when said actions usually aren't controversial in the least.