0
所以我正在深入挖掘對我來說複雜的java。我正在研究多線程,我想知道何時將對象的同一實例發送給兩個不同的線程,然後將該對象的實例分配給兩個線程中的兩個單獨的實例變量。 java是否將這看作是原始對象的同一個實例?這僅適用於線程嗎?Java中的多線程,引用對象
例如:在我的司機
SharedCell share = new SharedCell();
Producer p = new Producer(accessCount, share);
Consumer c = new Consumer(accessCount, share);
,並在線程:
public Producer(int accesses, SharedCell cell) {
super("Producer");
this.accesses = accesses;
this.cell = cell;
}
和
public Consumer(int accesses, SharedCell cell) {
super("Consumer");
this.accesses = accesses;
this.cell = cell;
}
其中Producer中運行方法改變在一個變量的值SharedCell對象 和Consumer中的run方法訪問該變量。這些應該是關閉的。
那麼Consumer和Producer中的單元格是否引用驅動程序發送它們的相同對象?