usingについての質問です

ネットワークプログラミングをしているのですが、通信が終わったときにNetworkStreamを閉じようと思い、以下のようなコードを書きました。

using( NetworkStream Stream = new NetworkStream(socket, true) )
{
…
事前の処理
…
Thread newthread = new Thread(Func);
newthread.Start(new object[] { Stream, newthread });
}

このような場合、NetworkStreamはどのように扱われるのでしょうか?
# threadの処理が終わるまで保持される?
# newthread.Startが呼ばれたあとにDispose()されてStreamはnullになる?