# DataOutputStream Nachrichten werden fehlerhaft gesendet.



## TheBohne (17. Dez 2017)

Hey ihr,
ich habe ein sehr komisches Problem...
Ich sende über TCP mithilfe der Klasse DataOutputStream Nachrichten.

```
this.dataOutputStream.writeUTF(stringWorkingPackage);
this.dataOutputStream.flush();
```

auf der Gegenseite empfange ich diese mit:

```
this.dataInputStream.readUTF();
```

Die Nachrichten die ich sende sehen wie Folgt aus:

```
21.0-40.0-23.0_29.0_31.0_37.0_
```

Doch ab und zu passiert folgendes:
Gesendet wird die Nachricht:

```
41.0-60.0-41.0_43.0_47.0_53.0_59.0_
```
Doch empfangen wird sie als:

```
41.0-60.0-41.0_43.0_47.0_53.0_#41.
```

Das Problem tritt etwa 1 mal alle 5 Durchläufe auf...

Was übersehe ich? Könnt ihr mir weiterhelfen...


----------



## TheBohne (17. Dez 2017)

Okay ich habe es grade herausgefunden 
In Java sind die Sockets nicht Thread-safe. So haben sich die gesendeten Nachrichten scheinbar vermischt.
https://stackoverflow.com/questions/13545578/is-java-socket-multi-thread-safe


----------

