私は
svnkit
svnリビジョンログを取得するためにJavaアプリケーションで使用しますが、visualVm
いくつかのsvnkitリソースとスレッドのプロセスが終了した後も存在し、生きています。元。org.tmatesoft.svn.core.internal.util.SVNHashMap$KeyIterator、org.tmatesoft.svn.core.wc.DefaultSVNRepositoryPool$TimeoutTask
また、複数回ログに記録しようとすると、アプリケーションのパフォーマンスに影響します。
svnkit リソースを解放するにはどうすればよいですか?
コードサンプル:
public static SVNLogEntryHandler doLogFully(String[] paths, long startRevision, long endRevision, SVNRepository repository) throws SVNException { SVNLogEntryHandler logEntryHandler = new SVNLogEntryHandler(); repository.log(paths, startRevision, endRevision, true, true, 0, false, null, logEntryHandler); return logEntryHandler; }
ストーリーログエントリ。
for (SVNLogEntry logEntry : doLogFully(..,..,..,..,..).getLogEntries()) { // store log entry }
アップデート
SVNRepository
を使って作成してSVNRepositoryFactory
います。SVNRepository repository = SVNRepositoryFactory.create(SVNURL.parseURIEncoded(repositoryUrl)); repository.setAuthenticationManager(SVNWCUtil.createDefaultAuthenticationManager(repositoryUserName, repositoryPassword));
質問する
216 次