FB_TCPClient/FB_TCPClient2 的方法

概述

FB_TCPClient2 提供的方法在功能上与功能块 FB_TCPClient 提供的相应方法相同。它们的区别在下表中进行了描述。

方法

FB_TCPClient

FB_TCPClient2

Close

x

x

Connect

x

x

ConnectStartTls

-

x

ConnectTls

-

x

GetBoundIPAddress

x

x

GetBoundPort

x

x

Peek

x

x

Receive

x

x

ReceiveOutOfBand

x

-

ResetByteCounters

x

x

ResetResult

x

x

Send

x

x

SendOutOfBand

x

-

Shutdown

x

x

SockOpt_EnableKeepAliveExtended

x

x

UpgradeToTls

-

x

x 受功能块支持。

- 不受功能块支持。

性能注意事项

当数据需要达到一定的量才能正确处理时,应用有两种方法可用:

  • Peek 方法用于将可用的数据复制到应用提供的空缓冲区。然后使用这些数据评估缓冲区中是否有足够的数据。如果足够,则使用 Receive 方法将数据从系统的接收缓冲区移到应用中,并在此处理。

  • 只调用 Receive 方法,但总是在应用提供的缓冲区上调用,用于指定缓冲区的填充水平。通过这种方法,数据只复制一次,并且只需调用一次方法,应用就可以评估是否有足够的数据并进行处理,因为数据已经处于应用所使用的缓冲区中。

第二种方法可避免多次复制存储器中的数据。