we can protected the close method in the base class, so it will not happen. My idea was to not expose incRef/decRef to the users, they instantiate and instance, and then just close it. I will add an assert if the refCount is smaller than 0.