Die vom FB_TCPClient2 bereitgestellten Methoden haben nahezu dieselbe Funktion wie die entsprechenden vom Funktionsbaustein FB_TCPClient bereitgestellten Methoden. Die Unterschiede werden in der folgenden Tabelle beschrieben.
Methode |
FB_TCPClient |
FB_TCPClient2 |
---|---|---|
x |
x |
|
x |
x |
|
- |
x |
|
- |
x |
|
x |
x |
|
x |
x |
|
x |
x |
|
x |
x |
|
x |
- |
|
x |
x |
|
x |
x |
|
x |
x |
|
x |
- |
|
x |
x |
|
x |
x |
|
- |
x |
|
x Vom Funktionsbaustein unterstützt. - Nicht vom Funktionsbaustein unterstützt. |
Muss eine bestimmte Datenmenge verfügbar sein, um eine ordnungsgemäße Verarbeitung zu gewährleisten, sind zwei Ansätze möglich:
Bei der Peek-Methode werden die verfügbaren Daten von der Anwendung in einen leeren Puffer kopiert. Anschließend wird anhand der Daten geprüft, ob der Puffer genügend Daten enthält. Ist das der Fall, werden die Daten mithilfe der Receive-Methode vom Empfangspuffer des Systems in die Anwendung verschoben und dort verarbeitet.
Aufgerufen wird nur die Receive-Methode, jedoch immer für den gleichen, von der Anwendung bereitgestellten Puffer und unter Angabe seines Füllungsniveaus. Bei diesem Ansatz werden die Daten nur einmal kopiert und die Anwendung kann bewerten, ob genügend Daten vorliegen und sie mit einem einzigen Methodenaufruf verarbeiten (die Daten befinden sich bereits in dem von der Anwendung verwendeten Puffer).
Der zweite Ansatz verhindert, dass Daten mehrmals in den Speicher kopiert werden.