TsgcWebSocketClient | Binaire berichten ontvangen

Wanneer de client een binair bericht ontvangt, wordt het evenement OnBinary geactiveerd. Lees de parameter Data om het ontvangen binaire bericht op te halen.


void OnBinary(TsgcWSConnection *Connection, const TMemoryStream *Data)
{
  oBitmap = new TBitmap();
  oBitmap->LoadFromStream(Data);
  Image1->Picture->Assign(oBitmap);
  Log(
      "#image uncompressed size: " + IntToStr(Data->Size) +
      ". Total received: " + IntToStr(Connection->RecBytes));
  delete oBitmap;
}

Standaard gebruikt de client de methode neAsynchronous om het OnMessage-evenement te verzenden. Dit betekent dat dit evenement wordt uitgevoerd in de context van de hoofdthread, waardoor het thread-veilig is om bijvoorbeeld een besturingselement van een formulier bij te werken.

 

Als uw client veel berichten ontvangt of u de synchronisatie met andere threads wilt beheren, stelt u de eigenschap NotifyEvents in op neNoSync. Dit betekent dat de OnMessage-gebeurtenis wordt uitgevoerd in de context van de verbindingsthread; als u dus een besturingselement op een formulier wilt bijwerken of gedeelde objecten wilt benaderen, dient u uw eigen synchronisatiemethoden te implementeren.