summaryrefslogtreecommitdiffstats
path: root/src/main/java/derms/net/rmulticast/Timeout.java
diff options
context:
space:
mode:
authorSam Anthony <sam@samanthony.xyz>2024-11-15 13:23:06 -0500
committerSam Anthony <sam@samanthony.xyz>2024-11-15 13:23:06 -0500
commitf02bf05c7b639f5edb86388c96dbb209a4622be9 (patch)
treefd0bef88337129bc8bf188860172c79729df2b3a /src/main/java/derms/net/rmulticast/Timeout.java
parentb767b34d97fdacd891702b041cc5eb1fdcb0b0a3 (diff)
downloadsoen423-f02bf05c7b639f5edb86388c96dbb209a4622be9.zip
reliable multicast: prune received list
Diffstat (limited to 'src/main/java/derms/net/rmulticast/Timeout.java')
-rw-r--r--src/main/java/derms/net/rmulticast/Timeout.java11
1 files changed, 1 insertions, 10 deletions
diff --git a/src/main/java/derms/net/rmulticast/Timeout.java b/src/main/java/derms/net/rmulticast/Timeout.java
index 2f2d0ed..2ccccd1 100644
--- a/src/main/java/derms/net/rmulticast/Timeout.java
+++ b/src/main/java/derms/net/rmulticast/Timeout.java
@@ -27,7 +27,7 @@ class Timeout<T extends Serializable & Hashable> implements Runnable {
public void run() {
try {
for (;;) {
- waitUntilTimeout();
+ Wait.forDuration(timeout);
if (positiveAcks.contains(msg.id())) {
log.info("Message " + msg.id() + "positively ack'ed.");
return;
@@ -40,13 +40,4 @@ class Timeout<T extends Serializable & Hashable> implements Runnable {
log.info("Timeout thread interrupted: " + e.getMessage());
}
}
-
- private void waitUntilTimeout() {
- Instant start = Instant.now();
- Duration elapsed;
- do {
- Thread.yield();
- elapsed = Duration.between(start, Instant.now());
- } while (elapsed.compareTo(timeout) < 0);
- }
}