物件中的靜態屬性是否在多執行緒中共享
//1.一個物件中的靜態屬性是否在多執行緒中共享
// 如下:
class test {
public static ArrayList arr = new ArrayList();
public static StringBuffer buf = new StringBuffer();
public static int i = 0;
public synchronized static void add() {
i++;
buf.append(i);
}
public static void String() {
System.out.print(buf.toString());
}
}
//2.若是共享 ,可不可以把單態中的方法改成靜態方法.
// 如下:
class AAA {
private static AAA a = null;
private static StringBuffer buf = new StringBuffer();
private AAA() {
}
public static synchronized AAA getInstance() {
if (a == null) {
a = new AAA();
}
return a;
}
//這裡若改成靜態方法,會不會影響(因為我看單態物件中的方法都不是靜態方法)
public void add(int i ) {
buf.append(i);
}
}
//可否改成
class BBB{
private static StringBuffer buf = new StringBuffer();
public static void add(int i) {
buf.append(i);
}
}
//3.在多執行緒環境下,垃圾回收執行緒會在什麼時回收這個含有靜態屬性的物件.
// 如下:
class test {
public static ArrayList arr = new ArrayList();
public static StringBuffer buf = new StringBuffer();
public static int i = 0;
public synchronized static void add() {
i++;
buf.append(i);
}
public static void String() {
System.out.print(buf.toString());
}
}
//2.若是共享 ,可不可以把單態中的方法改成靜態方法.
// 如下:
class AAA {
private static AAA a = null;
private static StringBuffer buf = new StringBuffer();
private AAA() {
}
public static synchronized AAA getInstance() {
if (a == null) {
a = new AAA();
}
return a;
}
//這裡若改成靜態方法,會不會影響(因為我看單態物件中的方法都不是靜態方法)
public void add(int i ) {
buf.append(i);
}
}
//可否改成
class BBB{
private static StringBuffer buf = new StringBuffer();
public static void add(int i) {
buf.append(i);
}
}
//3.在多執行緒環境下,垃圾回收執行緒會在什麼時回收這個含有靜態屬性的物件.
相關文章
- Java中一個物件在多執行緒中是共享的Java物件執行緒
- Java多執行緒3:Thread中的靜態方法Java執行緒thread
- 多執行緒靜態方法同步執行緒
- PHP 中 static 靜態屬性和靜態方法的呼叫PHP
- 如何產生一個C++區域性靜態物件的多執行緒問題C++物件執行緒
- 多執行緒中的使用共享變數的問題執行緒變數
- JavaScript 判斷物件中是否有某屬性JavaScript物件
- 靜態變數在多執行緒環境下的初始化是執行緒安全的嗎?變數執行緒
- Java中的多執行緒Java執行緒
- RxJava 中的多執行緒RxJava執行緒
- Qt 中的多執行緒QT執行緒
- 多執行緒中的ManualResetEvent執行緒
- 理解靜態區域性變數(static)在程式中的執行規則變數
- C#中的執行緒(三)多執行緒C#執行緒
- [譯] 繼承 JavaScript 類中的靜態屬性繼承JavaScript
- 多執行緒安全性和Java中的鎖執行緒Java
- python多執行緒-共享全域性變數Python執行緒變數
- Java中多執行緒的案例Java執行緒
- ArcGISEngine中的多執行緒使用執行緒
- Java 程式中的多執行緒Java執行緒
- 關於php中靜態方法,靜態屬性的一些淺見PHP
- 在單獨執行緒中執行物件成員函式 (轉)執行緒物件函式
- 靜態屬性
- 多執行緒之共享模型執行緒模型
- Android中的多程式、多執行緒Android執行緒
- Python中的多工:多執行緒Python執行緒
- Android《多執行緒-中》Android執行緒
- boost中asio網路庫多執行緒併發處理實現,以及asio在多執行緒模型中執行緒的排程情況和執行緒安全。執行緒模型
- C#Invoke委託在多執行緒中的使用C#執行緒
- Java多執行緒-執行緒狀態Java執行緒
- javascript,檢測object物件中是否存在某個屬性JavaScriptObject物件
- Delphi系列談之:Delphi中的靜態屬性及靜態方法的實現 (轉)
- 關於多執行緒訪問靜態方法的問題執行緒
- Java高併發與多執行緒(三)-----執行緒的基本屬性和主要方法Java執行緒
- iOS 開發中的多執行緒iOS執行緒
- Java中的多執行緒詳解Java執行緒
- 深入理解JavaScript類與物件:揭秘類欄位和靜態屬性的妙用,js靜態屬性和例項屬性JavaScript物件JS
- Java執行緒面試題(01) Java中如何檢查一個執行緒是否擁特定物件的鎖Java執行緒面試題物件