The "if you want to cry, then I will give you something to cry about", followed by a hiding, worked when I was a child... Too little of that these days...
Unfortunately, I've learned that people are more concerned with looks, or feeling awkward, and typically not thinking about the best thing to do for the child.
I work as a waitress and this couple that have three young children let their 4ish year old scream her head off (I wanted to yell at them to leave like in that one news story that came out a bit ago) but finally the mother just put her hand over the little girls mouth to shut her up and I was honestly worried about her getting hurt or even suffocating...
I work in a nursery with kids aged 1-4 and we do this with the kids when they're upset or angry (with the ones who can talk of course!) and it works so well! If they have a tantrum and start throwing things, don't react. Just stand there with no expression and they eventually realise they're getting nowhere, and will talk to you and calm down.
This post would absolutely be included!