-
Notifications
You must be signed in to change notification settings - Fork 752
Another deadlock, CHARACTER_EFF #263
Comments
can you show in your code: (print from line 2650-2700) |
2630-2703 from maplecharacter:
|
Just wonder |
I tell you what i think that happen:
but there 0.0001% that really happen because you need to have a lot Skill in cooldown that |
I think this: Somewhere around the server execution task, chrLock (or something else) is being locked before effLock. The locking chain pattern always expects one lock type to be locked before another, in order, else a deadlock configures. The pattern is: effLock always precedes chrLock. However, in some point on the code, chrLock or some other lock is preceding effLock. That's a fault, and will generate deadlock sometime. |
but the error on the server |
whats the point of double locks in 1st place? |
Some design decisions were made around effLocks that, since some effLock-protected code eventually executes chrLock locking, for whatever reason it is, now every effLock requires immediate chrLock as well to secure effLock-into-chrLock stability. |
The text was updated successfully, but these errors were encountered: