public abstract class AbstractOpenCLObject extends java.lang.Object implements OpenCLObject
OpenCLObject providing the release
mechanisms.OpenCLObject.ObjectReleaser| Modifier and Type | Field and Description |
|---|---|
protected OpenCLObject.ObjectReleaser |
releaser |
| Modifier | Constructor and Description |
|---|---|
protected |
AbstractOpenCLObject(OpenCLObject.ObjectReleaser releaser) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
finalize() |
OpenCLObject.ObjectReleaser |
getReleaser()
Returns the releaser object.
|
AbstractOpenCLObject |
register()
Registers this object for automatic releasing on garbage collection.
|
void |
release()
Releases this native object.
|
protected final OpenCLObject.ObjectReleaser releaser
protected AbstractOpenCLObject(OpenCLObject.ObjectReleaser releaser)
public AbstractOpenCLObject register()
OpenCLObjectOpenCLObjectManager, you have to release it manually
by calling OpenCLObject.release().
Without registering or releasing, a memory leak might occur.
this to allow calls like
Buffer buffer = clContext.createBuffer(1024).register();.register in interface OpenCLObjectthispublic void release()
OpenCLObjectgetReleaser().release().release in interface OpenCLObjectprotected void finalize()
throws java.lang.Throwable
finalize in class java.lang.Objectjava.lang.Throwablepublic OpenCLObject.ObjectReleaser getReleaser()
OpenCLObjectgetReleaser in interface OpenCLObject