Question: I have the following code:

```
new Thread(new ThreadStart(delegate()
{
    while (true)
    {
        //something
    }
})).Start();

```

Can garbage collector finalize this instance of `Thread` while it is in the `Running` state?

Answer: 
The CLR keeps track of all running threads. As long as there are references to objects they won't be garbage collected. And since the CLR keeps a reference to all running threads the GC won't touch them.
All running timer, threads, thread pool and tasks are marked as root. So they will be garbage collected only when they're done (finished executing) or will be deleted when the application closes.