diff --git a/src/explorviz/live_trace_processing/connector/TCPConnector.java b/src/explorviz/live_trace_processing/connector/TCPConnector.java
index fd9346ad39eebe2e11f8e91b8814150312d09fc3..902687609b396acd5f8eac74e15e32fde89dcb7f 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) {