We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
The reference counter is a bare size_t
size_t
marian-dev/src/common/intrusive_ptr.h
Lines 15 to 16 in 3daf4ee
Line 137 in 3daf4ee
If two threads destroy their references simultaneously, then both enter this function:
Lines 23 to 28 in 3daf4ee
x != 0
x->references_ == 2
Aside: this line doesn't do anything since it's in a function that takes type* x
type* x
Line 26 in 3daf4ee
The text was updated successfully, but these errors were encountered:
No branches or pull requests
The reference counter is a bare
size_t
marian-dev/src/common/intrusive_ptr.h
Lines 15 to 16 in 3daf4ee
and the pointer type is a bare pointer:
marian-dev/src/common/intrusive_ptr.h
Line 137 in 3daf4ee
If two threads destroy their references simultaneously, then both enter this function:
marian-dev/src/common/intrusive_ptr.h
Lines 23 to 28 in 3daf4ee
It's possible both threads will read
x != 0
andx->references_ == 2
then commit 1 back and leak the object.Aside: this line doesn't do anything since it's in a function that takes
type* x
marian-dev/src/common/intrusive_ptr.h
Line 26 in 3daf4ee
The text was updated successfully, but these errors were encountered: