aboutsummaryrefslogtreecommitdiffstats
path: root/src/jogl
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2013-04-04 05:34:57 +0200
committerSven Gothel <[email protected]>2013-04-04 05:34:57 +0200
commit68526d3f9432ea9c80e444146fc99b4ae1352d50 (patch)
tree79c72ef4b84332ffe05252ebb556bf86e46688b2 /src/jogl
parent15e20956fc6a700c12b54342b6e1320a150ce039 (diff)
OSX/CALayer Threading Part4: Stream all JAWT Root CALayer Operations on OSX Main-Thread
Previous code created, set and unset the root CALayer on the current thread, which lead to a very delayed destruction of the root CALayer w/. With Java7 this lead to a possible resource starvation in certain situations, since Java7 uses an CAOpenGLLayer. Similar w/ f354fb204d8973453c538dda78a2c82c87be61dc, creation, set and unset is operated on main-thread.
Diffstat (limited to 'src/jogl')
-rw-r--r--src/jogl/native/macosx/MacOSXWindowSystemInterface-calayer.m24
1 files changed, 12 insertions, 12 deletions
diff --git a/src/jogl/native/macosx/MacOSXWindowSystemInterface-calayer.m b/src/jogl/native/macosx/MacOSXWindowSystemInterface-calayer.m
index 35c9b6a7f..6738364a7 100644
--- a/src/jogl/native/macosx/MacOSXWindowSystemInterface-calayer.m
+++ b/src/jogl/native/macosx/MacOSXWindowSystemInterface-calayer.m
@@ -67,29 +67,29 @@ extern GLboolean glIsVertexArray (GLuint array);
- (id)initWithFormat:(NSOpenGLPixelFormat *)format shareContext:(NSOpenGLContext *)share
{
- DBG_PRINT("MyNSOpenGLContext.initWithFormat.0: format %p, share %p\n", format, share);
+ DBG_PRINT("MyNSOpenGLContext::initWithFormat.0: format %p, share %p\n", format, share);
MyNSOpenGLContext * o = [super initWithFormat:format shareContext:share];
- DBG_PRINT("MyNSOpenGLContext.initWithFormat.X: new %p\n", o);
+ DBG_PRINT("MyNSOpenGLContext::initWithFormat.X: new %p\n", o);
return o;
}
- (void)setView:(NSView *)view
{
- DBG_PRINT("MyNSOpenGLContext.setView: this.0 %p, view %p\n", self, view);
+ DBG_PRINT("MyNSOpenGLContext::setView: this.0 %p, view %p\n", self, view);
// NSLog(@"MyNSOpenGLContext::setView: %@",[NSThread callStackSymbols]);
if(NULL != view) {
[super setView:view];
} else {
[self clearDrawable];
}
- DBG_PRINT("MyNSOpenGLContext.setView.X\n");
+ DBG_PRINT("MyNSOpenGLContext::setView.X\n");
}
- (void)update
{
- DBG_PRINT("MyNSOpenGLContext.update: this.0 %p, view %p\n", self, [self view]);
+ DBG_PRINT("MyNSOpenGLContext::update: this.0 %p, view %p\n", self, [self view]);
[super update];
- DBG_PRINT("MyNSOpenGLContext.update.X\n");
+ DBG_PRINT("MyNSOpenGLContext::update.X\n");
}
#ifdef DBG_LIFECYCLE
@@ -132,20 +132,20 @@ extern GLboolean glIsVertexArray (GLuint array);
// NSLog(@"MyNSOpenGLContext::dealloc: %@",[NSThread callStackSymbols]);
[self clearDrawable];
- DBG_PRINT("MyNSOpenGLContext.dealloc.1 %d\n", CGLRETAINCOUNT(cglCtx));
+ DBG_PRINT("MyNSOpenGLContext::dealloc.1 %d\n", CGLRETAINCOUNT(cglCtx));
if( NULL != cglCtx ) {
CGLRetainContext( cglCtx );
- DBG_PRINT("MyNSOpenGLContext.dealloc.2 %d\n", CGLRETAINCOUNT(cglCtx));
+ DBG_PRINT("MyNSOpenGLContext::dealloc.2 %d\n", CGLRETAINCOUNT(cglCtx));
}
[super dealloc];
- DBG_PRINT("MyNSOpenGLContext.dealloc.3 %d\n", CGLRETAINCOUNT(cglCtx));
+ DBG_PRINT("MyNSOpenGLContext::dealloc.3 %d\n", CGLRETAINCOUNT(cglCtx));
if( NULL != cglCtx ) {
CGLReleaseContext( cglCtx );
- DBG_PRINT("MyNSOpenGLContext.dealloc.4 %d\n", CGLRETAINCOUNT(cglCtx));
+ DBG_PRINT("MyNSOpenGLContext::dealloc.4 %d\n", CGLRETAINCOUNT(cglCtx));
CGLDestroyContext( cglCtx );
- DBG_PRINT("MyNSOpenGLContext.dealloc.5 %d\n", CGLRETAINCOUNT(cglCtx));
+ DBG_PRINT("MyNSOpenGLContext::dealloc.5 %d\n", CGLRETAINCOUNT(cglCtx));
}
- DBG_PRINT("MyNSOpenGLContext.dealloc.X\n");
+ DBG_PRINT("MyNSOpenGLContext::dealloc.X\n");
}
@end