There’s a small race condition in the CCheckQueue code which I don’t think is currently an active issue, but future code might break.
IsIdle is not threadsafe. If two concurrent CCheckqueueControl
s are made, they could simultaneously report being idle, and fail to panic.
Furthermore, in the case a concurrent CCheckqueueControl
is made, most likely waiting until control is relinquished is the right behavior rather than failing an assert.