2014-01-17 21 views
0

Guice需要它自己的線程?我正在優化我的應用程序,我看到有一個名爲「com.google.inject.internal.util。$ Finalizer」的Guice線程。Guice需要它自己的線程是什麼?

理想情況下,我不想要這個額外的線程。

謝謝

回答

1

這看起來像是番石榴圖書館的一部分。下面是它的原始版本在番石榴代碼:https://code.google.com/p/guava-libraries/source/browse/guava/src/com/google/common/base/internal/Finalizer.java

這是該類從吉斯版本: http://code.google.com/p/google-guice/source/browse/core/src/com/google/inject/internal/util/Finalizer.java?r=86142556d360048671dc129f7b0c316f542473af

BTW,在未來的承諾我都鏈接到這個類的一個從吉斯刪除後,而Guice開始依靠番石榴。太好了!

此線程似乎由FinalizableReferenceQueueAPIsource)衍生出來。我不知道Guice究竟有多使用FinalizableReferenceQueue(我懷疑它是間接的,就像「Guice→Guava cache→FinalizableReferenceQueue」),但它似乎是一種不泄漏可關閉資源的自動防故障措施。我非常肯定你不能擺脫那個線程,除非它是由Guice的可選部分引起的(這不太可能)。

相關問題