diff options
author | Alexander Smirnov <alex@ydb.tech> | 2024-11-20 11:14:58 +0000 |
---|---|---|
committer | Alexander Smirnov <alex@ydb.tech> | 2024-11-20 11:14:58 +0000 |
commit | 31773f157bf8164364649b5f470f52dece0a4317 (patch) | |
tree | 33d0f7eef45303ab68cf08ab381ce5e5e36c5240 /util/ysafeptr.h | |
parent | 2c7938962d8689e175574fc1e817c05049f27905 (diff) | |
parent | eff600952d5dfe17942f38f510a8ac2b203bb3a5 (diff) | |
download | ydb-31773f157bf8164364649b5f470f52dece0a4317.tar.gz |
Merge branch 'rightlib' into mergelibs-241120-1113
Diffstat (limited to 'util/ysafeptr.h')
-rw-r--r-- | util/ysafeptr.h | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/util/ysafeptr.h b/util/ysafeptr.h index 22395ea3e3..ab5f26fb1b 100644 --- a/util/ysafeptr.h +++ b/util/ysafeptr.h @@ -33,10 +33,11 @@ private: #ifdef CHECK_YPTR2 static Y_POD_THREAD(bool) DisableThreadCheck; void CheckThreadId() { - if (dwThreadId == 0) + if (dwThreadId == 0) { dwThreadId = GetCurrentThreadId(); - else + } else { Y_ASSERT(dwThreadId == GetCurrentThreadId() || DisableThreadCheck); + } } void AddRef() { CheckThreadId(); @@ -69,14 +70,16 @@ private: void ReleaseRef() { CheckThreadId(); --RefData; - if (RefData == 0) + if (RefData == 0) { ReleaseRefComplete(); + } } void ReleaseObj(int nRef, int nMask) { CheckThreadId(); ObjData -= nRef; - if ((ObjData & nMask) == 0) + if ((ObjData & nMask) == 0) { ReleaseObjComplete(nMask); + } } protected: @@ -262,18 +265,21 @@ private: void AddRef(TUserObj* _ptr) { TRef p; - if (_ptr) + if (_ptr) { p.AddRef(CastToObjectBase(_ptr)); + } } void DecRef(TUserObj* _ptr) { TRef p; - if (_ptr) + if (_ptr) { p.DecRef(CastToObjectBase(_ptr)); + } } void Release(TUserObj* _ptr) { TRef p; - if (_ptr) + if (_ptr) { p.Release(CastToObjectBase(_ptr)); + } } protected: |