C# out参数 传值是在函数退出仍是在函数执行时

C# out参数 传值是在函数退出还是在函数执行时?个人觉得是在函数退出时,要不然中间传出后若是后面推出前再

C# out参数 传值是在函数退出还是在函数执行时?
个人觉得是在函数退出时,要不然中间传出后若是后面推出前再次赋值岂不使得引用中间传出值的线程或者其他活动出错?
求传道授业解惑!

[解决办法]
我估错了,会变的

C# code
static int a = 1;static void Main(string[] argv){    ThreadPool.QueueUserWorkItem(p =>    {        while (true)        {            Console.WriteLine(a);            Thread.Sleep(500);        }    });    Proc(out a);}private static void Proc(out int a){    var ram = new Random();    while (true)    {        Thread.Sleep(200);             a = ram.Next(1000);    }}