我有一個隊列在我的多線程服務器中實現爲鏈表。我想從另一個類訪問這個隊列。兩個類都在同一個包中。我試圖讓這個隊列爲公共靜態並通過getter訪問它,但沒有成功有人可以告訴我什麼是確切的問題。從java中的另一個類訪問靜態變量
這是我的代碼: 隊列聲明:
public static Queue<Request> q=new ConcurrentLinkedQueue<Request>();
public static void setQ(Queue<Request> q) {
Connection.q = q;
}
public static Queue<Request> getQ() {
return q;
}
Accesing隊列:
Queue<Request> queue=new ConcurrentLinkedQueue<Request>();
queue=Connection.getQ();
增值的連接線程隊列
q.add(r);
發佈您的代碼的相關部分請 – scibuff 2012-04-23 11:22:52
還有什麼是您遇到的實際問題?解釋「沒有成功」。它是編譯問題還是運行時? – maksimov 2012-04-23 11:24:01
請注意在多線程程序上使用非線程安全隊列。如果你還沒有看過[BlockingQueue](http://docs.oracle.com/javase/6/docs/api/java/util/concurrent/BlockingQueue.html),它可能會對你有所幫助。 – amit 2012-04-23 11:26:01