Matlab2020 tcp socket open
显示 更早的评论
Im trying to establish a server socket on Matlab2020a.
However when I try to open the socket, it seems to be stuck at that line.
It was working till a few days back, but keeps getting stuck at this point now.
回答(1 个)
Kunal Kandhari
2021-6-19
The following code will create Server socket at port 5001 and infinitely allows clients to connect and receive data from them:
[~,hostname] = system('hostname');
hostname = string(strtrim(hostname));
address = resolvehost(hostname,"address");
server = tcpserver(address,5001,"ConnectionChangedFcn",@connectionFcn)
function connectionFcn(src, ~)
if src.Connected
disp("Client connected")
readData = read(src,src.NumBytesAvailable,'string');
disp(readData);
write(src,"Bye Bye","string");
end
end
Client code(for testing purpose):
client = tcpclient("172.31.120.98",5001,"Timeout",5);
% do change Ip address to Ip address at which server socket is created, you
% can find that from command line after runing server socket code
while(true)
rawData="Hello Server";
write(client,rawData,"string");
rawData = read(client,7,"string");
disp(rawData);
end
For more reference:
类别
在 帮助中心 和 File Exchange 中查找有关 TCP/IP Communication 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!