RefCntBase

class RefCntBase

RefCntBase is the base class for objects that may be shared by multiple objects.

When an existing owner wants to share a reference, it calls ref(). When an owner wants to release its reference, it calls unref(). When the shared object’s reference count goes to zero as the result of an unref() call, its (virtual) destructor is called. It is an error for the destructor to be called explicitly (or via the object going out of scope on the stack or calling delete) if getRefCnt() > 1.

Methods

__init__

ref

Increment the reference count.

unique

May return true if the caller is the only owner.

unref

Decrement the reference count.

Methods

RefCntBase.__init__(*args, **kwargs)
RefCntBase.ref(self: skia.RefCntBase) None

Increment the reference count.

Must be balanced by a call to unref().

RefCntBase.unique(self: skia.RefCntBase) bool

May return true if the caller is the only owner.

Ensures that all previous owner’s actions are complete.

RefCntBase.unref(self: skia.RefCntBase) None

Decrement the reference count.

If the reference count is 1 before the decrement, then delete the object. Note that if this is the case, then the object needs to have been allocated via new, and not on the stack.