summaryrefslogtreecommitdiffstats
path: root/src/main/java/derms/net
diff options
context:
space:
mode:
authorSam Anthony <sam@samanthony.xyz>2024-11-23 11:49:19 -0500
committerSam Anthony <sam@samanthony.xyz>2024-11-23 11:49:19 -0500
commit937751bb700c215680596e3629b4aacd1c4b2022 (patch)
treebe16f498cea2c4b0d745ea17d44b16b88e350777 /src/main/java/derms/net
parent8d61a334a0da0728d2eaea739341ba6e1acfcceb (diff)
downloadsoen423-937751bb700c215680596e3629b4aacd1c4b2022.zip
runicast: reuse buffer between receive()'s
Diffstat (limited to 'src/main/java/derms/net')
-rw-r--r--src/main/java/derms/net/runicast/Receive.java3
-rw-r--r--src/main/java/derms/net/runicast/ReceiveAcks.java3
2 files changed, 4 insertions, 2 deletions
diff --git a/src/main/java/derms/net/runicast/Receive.java b/src/main/java/derms/net/runicast/Receive.java
index 8620ebd..88008bd 100644
--- a/src/main/java/derms/net/runicast/Receive.java
+++ b/src/main/java/derms/net/runicast/Receive.java
@@ -28,8 +28,9 @@ class Receive<T extends MessagePayload> implements Runnable {
@Override
public void run() {
+ ByteBuffer buf = ByteBuffer.allocate(bufSize);
for (;;) {
- ByteBuffer buf = ByteBuffer.allocate(bufSize);
+ buf.clear();
try {
SocketAddress sender = sock.receive(buf);
Message<T> msg = (Message<T>) Serial.decode(buf, Message.class);
diff --git a/src/main/java/derms/net/runicast/ReceiveAcks.java b/src/main/java/derms/net/runicast/ReceiveAcks.java
index 9d7b7de..e2c7e3c 100644
--- a/src/main/java/derms/net/runicast/ReceiveAcks.java
+++ b/src/main/java/derms/net/runicast/ReceiveAcks.java
@@ -29,8 +29,9 @@ class ReceiveAcks<T extends MessagePayload> implements Runnable {
@Override
public void run() {
+ ByteBuffer buf = ByteBuffer.allocate(bufSize);
for (;;) {
- ByteBuffer buf = ByteBuffer.allocate(bufSize);
+ buf.clear();
try {
sock.receive(buf);
Ack ack = Serial.decode(buf, Ack.class);