In meinem Programm sende ich einen Befehl an ein Gerät und es sendet einige Daten zurück. Wenn die Daten verfügbar sind, wird der folgende Event-Handler aufgerufen.C# - Bluetooth Programmierung
private void notify_change(GattCharacteristic sender, GattValueChangedEventArgs args)
{
lock (this._dataRec)
{
notCounter++;
byte[] bArray = new byte[args.CharacteristicValue.Length];
DataReader.FromBuffer(args.CharacteristicValue).ReadBytes(bArray);
dataQ.Enqueue(Encoding.ASCII.GetString(bArray));
Monitor.Pulse(this._dataRec);
}
}
Manchmal bemerkte ich, dass diese vor dem vorherigen Daten gelesen wurden aufgerufen werden (oder so ähnlich, aus der Liste der Befehle, scheinen Daten zu fehlen). Sieht so aus, als ob der Puffer bei jedem Aufruf der Funktion überschrieben wird. Gibt es eine Möglichkeit, dem Puffer Daten hinzuzufügen, anstatt sie zu überschreiben?