One of our local supermarkets put up a 1&1/2 hour time limit a couple of years ago because, being right in the center of town a lot of people were parking there & heading off to do their shopping elsewhere or even parking there during the day while at work.
They only enforced the fines for a few months to clear out the bludgers & since then there's never been any parking trouble for the shop & I've not known them to actually fine anyone for being over the limit in practical grocery terms, including if you take the time to run across the road to grab something from another shop. Although I expect you would get fined if you stayed there for a major shopping spree or tried parking there all day.
I thought they were being a bit stupid & short sighted at first, as one of the things, asides from price, that will bring a customer back is if they can take their time & chat with the staff etc... generally make something stressfull as pleasant as possible. Having to watch the time constantly just in case you're a few minutes over will drive people elsewhere.
But all in all, probably because they only enforce it with the real long-term spacewasters, it has worked out well.
As for McDonalds... why on earth do they build those big play areas for the children if they don't want the families to take their time? One of the things that makes McDonalds so popular (it's not the food after all) is that tired parents can feed the kids then send them off to play in a safe environment while they relax back with a cuppa & some munchies & chat with their mates. Generally have a breather in the middle of a hectic day. And that is exactly what McDonalds was hoping to cash in on when they built the damn things. Putting a time limit on sort of defeats the purpose really. I expect there'll be a lot of people heading over to Burger King now.