Resource3
Shared object
Usage
#include <InterViews/resource.h>
Overview
Resource is a class that provides a simple form of reference 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. Otherwise do nothing.
- static void unref(Resource*)
-
If the resource is not nil, call unref on it. Otherwise 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 provided 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 will be removed in a future version.
Releases
Unchanged in 2 releases since Debian 2.2 (Potato).