你能幫我嗎?在函數中創建一個變量 - 多線程環境
我在Java中有一個函數'f'。該功能在多線程環境中工作
f() {
SomeObject someO = new SomeObject();
function1(someO);
.
.
.
function7(someO);
}
的問題:第一個線程進入函數「f」和創建SomeObject的新實例,然後調用功能1,函數2等。當第一個線程在function4中時,稍後的第二個線程進入該方法並創建SomeObject的新的初始化。問題是SomeObject的哪個實例將由函數5,6,7的其餘部分中的第一個線程處理?
來自兩個不同線程的調用將創建兩個不同的實例,將它們分配給兩個不同的局部變量,並將每個實例傳遞給每個函數。你認爲會發生什麼,不同於此,爲什麼? – pvg