Skip to content
Snippets Groups Projects
Commit 7ca29c86 authored by Matthias Arzt's avatar Matthias Arzt Committed by tpietzsch
Browse files

Fix memory leak: PainterThread shouldn't hold a reference to ViewerPanel

parent 8c25d139
No related branches found
No related tags found
No related merge requests found
......@@ -260,7 +260,7 @@ public class ViewerPanel extends JPanel implements OverlayRenderer, PainterThrea
renderingExecutorService = Executors.newFixedThreadPool(
options.getNumRenderingThreads(),
new RenderThreadFactory() );
new RenderThreadFactory(threadGroup) );
imageRenderer = new MultiResolutionRenderer(
renderTarget, painterThread,
options.getScreenScales(),
......@@ -1153,14 +1153,21 @@ public class ViewerPanel extends JPanel implements OverlayRenderer, PainterThrea
protected static final AtomicInteger panelNumber = new AtomicInteger( 1 );
protected class RenderThreadFactory implements ThreadFactory
protected static class RenderThreadFactory implements ThreadFactory
{
private ThreadGroup threadGroup;
private final String threadNameFormat = String.format(
"bdv-panel-%d-thread-%%d",
panelNumber.getAndIncrement() );
private final AtomicInteger threadNumber = new AtomicInteger( 1 );
protected RenderThreadFactory( final ThreadGroup threadGroup )
{
this.threadGroup = threadGroup;
}
@Override
public Thread newThread( final Runnable r )
{
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment