0
我遇到了一個perfomance問題,其中880個線程在同一時間正在做synchronized() { method() }
,這導致了一個主要的性能問題。同步(對象){}問題
是否有可能在synchronized()
上等待線程的限制?我在哪裏可以獲得限制?
另一個問題是什麼最好放入synchronized(?)
。因爲我有不同的類訪問該變量,所以我不能把synchronized(this)
。
我遇到了一個perfomance問題,其中880個線程在同一時間正在做synchronized() { method() }
,這導致了一個主要的性能問題。同步(對象){}問題
是否有可能在synchronized()
上等待線程的限制?我在哪裏可以獲得限制?
另一個問題是什麼最好放入synchronized(?)
。因爲我有不同的類訪問該變量,所以我不能把synchronized(this)
。
有沒有辦法限制同步的任何東西,對於高級併發構造,你需要看看http://java.sun.com/j2se/1.5.0/docs/api/java/util/concurrent/package-summary.html。
關於你放在同步的內容(?),這意味着你鎖定的內容取決於你想要實現的鎖定行爲。如果你有一個全局的對象(例如public static Object LOCK = new Object();),它可以從所有不同的類訪問,並且你可以同步,那麼所有的類都將鎖定在那個類上。
你能否更好地解釋你的上下文,以及這樣的方法。您可能會使用錯誤的數據結構。 – notnoop 2010-01-06 21:32:39
880個線程?你遇到性能問題並不奇怪。你能用更少的線程解決你的問題,而使用異步操作嗎? – 2010-01-06 21:34:25
什麼是「主要性能問題」? 879死鎖線程? – 2010-01-06 22:07:49