我
svnkit
在 java 应用程序中使用来获取 svn 修订日志,但是在完成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 次
1 回答
0
在创建 SVNRepository 实例的连接池上运行 ISVNRepositoryPool#dispose。它将停止计时器。
SVNKit 资源发布另见本文。
于 2013-05-21T12:21:52.183 回答