private void setNativeObjectLocked(long ptr) {
    if (mNativeObject != ptr) {
        if (mNativeObject == 0 && ptr != 0) {
            mCloseGuard.open("release");
        } else if (mNativeObject != 0 && ptr == 0) {
            mCloseGuard.close();
        }
        mNativeObject = ptr;
        mGenerationId += 1;
        if (mHwuiContext != null) {
            mHwuiContext.updateSurface();
        }
    }
}