I am struggling with this issue right now. We had never used time-out till very recently. I used to be quite vocal about my objections--many of which I still do have. I will never use TO for "not listening," being rude, etc.
But I changed my views about using time-out the day my DD grabbed my hair and pulled it so hard and persistently that my hand reached out and smacked her on the back just so she would let go.
:cry You of course need not tell me how wrong this is. I was viscerally shocked that I had done it--I didn't even know I was doing it till I was done. (This was after I had already been hit a number of times.) Of course I cried and apologized (and DD, naturally, said "Mama, don't hit me! It's not okay to hit!") I felt like crap, believe you me, but the thing was, I just snapped. (I had already been hit a number of times and was at the end of my rope.)
That was the day I realized that when my DD is physically lashing out, I MUST get distance from her. If I shut myself in my room ("Mommy takes a time out"--often suggested here), she will follow and scream and bang on the door. If I shut her in her room, she will do the same. It's really all the same to her. I do one or the other--whichever. I tell her I can't be with her till she's ready to stop hurting and promises she will. It does work. Yes, she cries and protests. But I literally do not know what else to do. I never, ever, want to strike my child again.
IMO, this is what time-out is for--a last resort separation and cool-down time for parent and child when parent and child cannot cope. When we think of the origins of time-out, it is used in sports on players who are physically out of control. I think it does have a very limited place in that sense.