Resource - shared object
SYNOPSIS
#include <InterViews/resource.h>
DESCRIPTION
Resource is a class that provides a simple form of refer-
ence counting for shared objects. Every resource has a
reference count that is initially set to zero and must be
explicitly incremented through a call to Reference. A
resource should not be deleted like other objects;
instead, the static member function unref should be used
to unreference the object.
When a resource is unreferenced, the reference count is
decremented unless it is already zero. If the count is
zero, the object is destroyed.
PUBLIC OPERATIONS
Resource()
Create a new resource object with its reference
count set to zero.
void ref()
Increment the resource's reference count.
void unref()
Decrement the resource's reference count, if it is
positive, and delete this if the count is zero.
static void ref(Resource*)
If the resource is not nil, call ref on it. Other-
wise do nothing.
static void unref(Resource*)
If the resource is not nil, call unref on it. Oth-
erwise do nothing.
void Reference()
This function is equivalent to ref and is provided
solely for backward compatibility. It will be
removed in a future version.
void Unreference()
This function is equivalent to unref and is pro-
vided solely for backward compatibility. It will
be removed in a future version.
FRIEND OPERATIONS
void Unref(Resource*)
This function is equivalent to static unref and is
provided solely for backward compatibility. It
This scheme relies on manual referencing, which is more
efficient, but also more dangerous.
When garbage collection is supported by the runtime sys-
tem, resources will be unnecessary.
Man(1) output converted with
man2html