![](/img/trans.png)
[英]How does a second thread check and recheck the lock object of a class that is current used by the first thread?
[英]How to check what thread or object is still used or not?
誰能告訴我如何查看哪些活動/線程保持活動狀態,而不再由我的應用程序調用?
例如,如果我打開一個HTTP流,然后不刷新,而是繼續打開新的流,則使用的內存將繼續增加,直到GC通過清理為止。 是否有可能以某種方式查看在給定的時間x內已生成並未使用的線程或對象等?
發出此請求的原因是由於在服務器上部署了應用程序,這會繼續增加內存,直到達到限制,從而迫使GC干預以重新建立穩定的內存情況。
我不知道這對分析是否有幫助,但是gcc參數設置為:
-Xms8g -Xmx8g -XX:PermSize = 1024 XX:MaxPermSize = 1024
機器的公羊是18克。
預先感謝所有人
要檢查是否仍使用對象,請執行完整的GC。 此操作沒有捷徑可走。
在執行垃圾回收之前,您不知道是否需要對象。
直到GC通過清理為止,使用的內存將繼續增加。
這在JVM中很正常。 為了提高性能,您想重用昂貴的對象,而不必過多擔心廉價的對象。 您還需要調整GC,以使其在運行時不會對應用程序造成太大影響。
注意:Perm Gen已從Java 8中刪除,從2019年3月開始,只有Java 12可以從Oracle免費更新,因此需要在某個時候考慮進行升級。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.