channel send() condition variable lock ordering (#20879)
This commit is contained in:
parent
fe43f751eb
commit
79b25a911b
1 changed files with 1 additions and 1 deletions
|
|
@ -363,8 +363,8 @@ proc sendImpl(q: PRawChannel, typ: PNimType, msg: pointer, noBlock: bool): bool
|
||||||
|
|
||||||
rawSend(q, msg, typ)
|
rawSend(q, msg, typ)
|
||||||
q.elemType = typ
|
q.elemType = typ
|
||||||
releaseSys(q.lock)
|
|
||||||
signalSysCond(q.cond)
|
signalSysCond(q.cond)
|
||||||
|
releaseSys(q.lock)
|
||||||
result = true
|
result = true
|
||||||
|
|
||||||
proc send*[TMsg](c: var Channel[TMsg], msg: sink TMsg) {.inline.} =
|
proc send*[TMsg](c: var Channel[TMsg], msg: sink TMsg) {.inline.} =
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue