diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2017-01-09 15:51:17 +0100 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2017-01-09 15:51:17 +0100 |
commit | e3f1192b39150b70372b508032dc1204b747eaf6 (patch) | |
tree | a278cee0376275df61622a8888bee44a10d9756b | |
parent | 91d2b115be0dc28c26c47e5331bdaea01cc3abd3 (diff) |
Enable clearing and unblocking.
-rwxr-xr-x | vespaclient-core/src/main/java/com/yahoo/feedapi/SharedSender.java | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/vespaclient-core/src/main/java/com/yahoo/feedapi/SharedSender.java b/vespaclient-core/src/main/java/com/yahoo/feedapi/SharedSender.java index 4c96a7efc0b..08243c4e0ec 100755 --- a/vespaclient-core/src/main/java/com/yahoo/feedapi/SharedSender.java +++ b/vespaclient-core/src/main/java/com/yahoo/feedapi/SharedSender.java @@ -223,10 +223,11 @@ public class SharedSender implements ReplyHandler { @Override protected boolean tryReleaseShared(int releases) { // Increment/Decrement count; signal when transition downwards to zero. + // releases == 0 means unblock all while ( true ) { int c = getState(); if ((c == 0) && (releases >= 0)) { return false; } - int nextc = (c > releases) ? c - releases : 0; + int nextc = (c > releases) ? ((releases != 0) ? c - releases : 0) : 0; if (compareAndSetState(c, nextc)) { return nextc == 0; } |