how to avoid tcpclient function open new ports all the time ?
이전 댓글 표시
Hi,
does anyone know how to avoid Matlab open a new port, everytime something received via tcp ?
Cant find anything about it in the documentation but opening and closing a port decreases performance a lot.
t = tcpclient("192.168.11.1",1045,"Timeout",1,"ConnectTimeout",300);
%configureCallback(t,"byte",4,@readbytesfunction);
%t.BytesAvailabeFcn = @readbuffercallback; %if condition reached go to callback;
%readasync(t);;
%data2 = 0;
%data = int8(data2);
%write(t,data);
datareceive = read(t,4,"uint8");
app.ServerantwortEditField.Value = int2str(datareceive);
with matlab2021a the old functions doesnt work anymore.
I just want to open a socket connection with one port and pass data through continiously.
Thanks.
답변 (1개)
Zinea
2024년 2월 25일
When working with the ‘tcpclient’ object, it is not necessary for the client to open a new port each time it receives data. Instead, it should establish a single connection to the server and then continuously read from or write to that connection.
Here is an example code for your peruse:
while true
% Check if data is available to read
if t.BytesAvailable > 0
datareceive = read(t, t.BytesAvailable, "uint8");
app.ServerantwortEditField.Value = int2str(datareceive);
end
% Include a condition to break out of the loop and close the connection
end
카테고리
도움말 센터 및 File Exchange에서 Standard File Formats에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!