比如
void TestInput(int data)
{
sleep(20000);
console.writeline(data.toString());
}
void Main()
{
int[]data=new int[2];
data[0]=1;
data[1]=2;
int i=0;
Task.run(()=>
{
TestInput(data[i]);
})
i=1;
console.Readkey();
}
當前狀態下,數組元素data[i]作爲方法的輸入參數,輸入的是i所對應的數組的引用,當外部i改變時,data[i]的值也相應改變。所以當前屏幕輸出爲2,而不是1.
(手敲代碼,抱歉)