From 8615e1f0cec5d9e846314d37ba9cdcf152a0128f Mon Sep 17 00:00:00 2001 From: Florian Fittkau <ffi@informatik.uni-kiel.de> Date: Wed, 29 Apr 2015 10:32:51 +0200 Subject: [PATCH] ... --- .../connector/TCPConnector.java | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/explorviz/live_trace_processing/connector/TCPConnector.java b/src/explorviz/live_trace_processing/connector/TCPConnector.java index fd9346a..9026876 100644 --- a/src/explorviz/live_trace_processing/connector/TCPConnector.java +++ b/src/explorviz/live_trace_processing/connector/TCPConnector.java @@ -85,18 +85,34 @@ public class TCPConnector extends AbstractSink implements IWriter, IStringRecord @Override public void sendOutStringRecord(final StringRegistryRecord record) { - sendOutStringRecordOnlyIfFull(record); + while (!finishedSendingStrings) { + try { + Thread.sleep(1); + } catch (final InterruptedException e) { + } + } + + if (record.getRecordSizeInBytes() > stringBuffer.remaining()) { + prioritizedSend(stringBuffer); + } + record.putIntoByteBuffer(stringBuffer, stringRegistry, this); prioritizedSend(stringBuffer); } @Override - public void sendOutStringRecordOnlyIfFull(final StringRegistryRecord record) { + public void sendOutStringRecordAll(final StringRegistryRecord record) { if (record.getRecordSizeInBytes() > stringBuffer.remaining()) { prioritizedSend(stringBuffer); } record.putIntoByteBuffer(stringBuffer, stringRegistry, this); } + @Override + public void sendOutStringRecordAllSingle(final StringRegistryRecord record) { + sendOutStringRecordAll(record); + prioritizedSend(stringBuffer); + } + @Override public void processRecord(final IRecord record) { if (record instanceof Trace) { -- GitLab