Irgendwas beunruhigt mich seit Jahren. Ich arbeite mit vielen Bluetooth und in letzter Zeit wifi Streams (spp). Diese Streams verbinden sich immer mit bestimmten Geräten und die Kommunikation erfolgt über einfache Byte-Befehle.Kann ein Bluetooth- oder WiFi-Stream (spp) jemals Bytes übersehen oder beschädigt haben?
Einige der Geräte (ihre Mikrocontroller) programmiere ich selbst und dort muss ich immer überprüfen, ob das Signal auf dem Draht ist, was ich erwarte, senden und auf crcs überprüfen.
Irgendwie möchte ich das gleiche auf meinem Smartphone machen, weil ich mit "readByte" auf meine Streams zugreife und byteweise lese und mich immer frage, ob es tatsächlich möglich ist, dass a) ein Byte von einer Nachricht fehlen kann b) Nachrichten kommen gemischt oder "out of sequence"
Ich habe keine Ahnung, wie viel die zugrunde liegende Hardware tut. Prüft es jede Nachricht mit crc und fordert die Nachricht erneut an, wenn sie beschädigt wurde? Oder übergibt es blind jedes Byte an meine "readByte" -Methode?
Wenn das Gerät Nachricht a und dann b sendet, ist es möglich, dass der Empfänger b vor a empfängt und meinen Code b vor einem oder sogar die Bytes wie ein Reißverschluss durcheinander bringt und mir eine [0] dann b [ 0] dann a [1] und so weiter.
Wie viel Vertrauen in diese Ströme sollte ich haben? Etwas Klärung wäre wünschenswert