全局变量列表包含 TcpUdpCommunication 库的全局变量。
全局变量由各自功能块自动使用。
变量 |
数据类型 |
描述 |
---|---|---|
G_stDefaultSocketOptionsTCPClient |
在 TCP 客户端连接初始化时设置的套接字选项的缺省值。 |
|
G_stDefaultSocketOptionsTCPServer |
在 TCP 服务器套接字始化时设置的套接字选项的缺省值。 |
|
G_stDefaultSocketOptionsUDPPeer |
在 UDP 套接字始化时设置的套接字选项的缺省值。 |
|
G_xDisableAsyncExecTcpClient |
BOOL |
如果为 TRUE,则禁用异步地执行用于建立安全连接的程序代码。(1) 缺省值:FALSE |
G_xDisableAsyncExecTcpServer |
BOOL |
如果为 TRUE,则禁用异步地执行用于打开安全套接字以及用于接受传入连接的程序代码。(1) 缺省值:FALSE |
(1) 注:禁用异步执行意味着在调用任务中同步执行相应的程序代码。在相应的过程中,这会大大延长至少一个任务循环的执行时间。 |
代码示例显示如何更改 TCP 客户端实施的缺省套接字选项。在该示例中,缺省接收缓冲区大小设置为 10000 个字节。只要变量 xModifyReceiveBufferSize 为 TRUE,此缺省值就适用于每个新连接。
IF NOT xInitDone THEN
// Enable the use of user defined default socket options
TCPUDP.GVL.G_stDefaultSocketOptionsTCPClient.xModifyReceiveBufferSize := TRUE;
// Set the values for the default socket options
TCPUDP.GVL.G_stDefaultSocketOptionsTCPClient.udiReceiveBufferSizeValue := 10000;
xInitDone := TRUE;
END_IF
// Connect to the server
IF (fbTcpClient.State = TCPUDP.ET_State.Idle) AND xConnect THEN
xConnectDone := fbTcpClient.Connect(i_sServerIP:= '192.168.100.11', i_uiServerPort:= 12345);
IF NOT xConnectDone THEN
; // error handling
END_IF
xConnect :=FALSE;
END_IF
注意: 能够为每个打开的套接字单独修改套接字选项,而不受缺省套接字选项的影响。可利用相应功能块实例的相应属性来修改套接字选项。