我使用MATLAB编写了一个简单的Web服务器。遵循这个代码。问题是当我在(1)和结束时注释掉。当我输入http://localhost:85
时,代码没有问题
浏览器正确收到了HTML页面。但是当我添加while循环时,我甚至无法调试代码,每当我设置断点时,MATLAB崩溃,为什么?
import java.net.* java.io.* java.os.*
sSocket = ServerSocket(85);
sSocketClose = onCleanup( @() sSocket.close() );
while (1)
cSocket = sSocket.accept();
iStream = DataInputStream (cSocket.getInputStream() );
oStream = DataOutputStream(cSocket.getOutputStream());
Message200Header = ['HTTP/1.1 200 OK', char([13,10]), ...
'Content-Type: text/html', char([13,10]), ...
'Connection: close', char([13,10]), char([13,10])];
oStream.write(uint8(Message200Header), 0 , length(Message200Header));
page = '<html><body><h1>Hello world</h1></body></html>';
oStream.write(uint8(page), 0, length(page));
iStream.close();
oStream.close();
cSocket.close();
end
sSocket.close();
我改变了 而(1) 至 对于k = 1:2
当我运行代码时,MATLAB仍然崩溃。
当我评论 while / for ,结束时 并手动运行循环几次,然后就可以了,为什么?