在一次做專案中,由於Socket協議接收的報文會有不定長度,基本每次都會有變化,在data.ws 接收buf1有固定長度,這是在接收的實時報文會有長度不一致的問題。這時LR預設會去與接收的報文的長度及報文內容,會與data.ws中定義的相對比,以確定返回的報文的正確與否,在不一致情況,則會出現比對耗時較長,影響整體TPS。

  好了,接下直接說明方法,TPS處理能力至少提升十倍哦~

  即在最後接收報文函式”lrs_get_last_received_buffer”之後,新增:lrs_receive_ex(“socket0“, “buf1”, "NumberOfBytesToRecv=300", LrsLastArg);即可實現。

  其中NumberOfBytesToRecv=300,則是強制接收為300位返回的buffer。

  詳情也可檢視另一邊關於Socket協議指令碼編寫指南:LR編寫Socket指令碼方法1(XML/16進位制報文data.ws格式)