1
0
Fork 0
mirror of https://codeberg.org/Mercury-IM/Smack synced 2024-12-22 20:47:57 +01:00
Smack/smack-core
Florian Schmaus b510d373b5 reactor: have synchronized block include peeking at scheduled actions
If we do not peek at the scheduled actions in the reactors
synchronized block, then there is a kind of lost-update problem. While
Ractor.schedule() will call wakeup() on the selector, a thread could
have already determined the value of selectWait, while being blocked
at the start of the synchronized reactor section. Once it is able to
enter the section, it will use an outdated selectWait value.

This leads to scheduled actions not being executed on time.

Thanks to Eng ChongMeng for reporting this and suggesting the fix.
2019-10-12 10:22:31 +02:00
..
src reactor: have synchronized block include peeking at scheduled actions 2019-10-12 10:22:31 +02:00
.gitignore Prefix subprojects with 'smack-' 2014-04-28 19:44:14 +02:00
build.gradle Remove xmlunit-lagacy and add xmlunit-assertj 2019-05-07 19:06:16 +02:00