In addition to Killercam's answer I want to point out that the sample code on the page linked is garbage. It looks like someone was told "create a sample that just shows all the different methods that we have on one page". And it literally came out like that...
When doing threading you almost never wait in a polling loop. Especially not in a tight one with any kind of waiting. They make the CPU hot, are unreliable, have high latency if you put a sleep in there and there are just better ways to do it. Spin loops are for experts who know what they're doing in very specific cases.
There is no point in waiting for a Thread to be "alive". Why would anyone do this in real code? This does not even mean that your thread proc has started executing (really! it doesn't.).
I recommend you use modern paradigms. The TPL is a good place to start. See Killercam's answer.