|
|
小白求助啊,在使用Ethernet库的时发现了很多奇怪的问题,求大神帮忙。
1.EthernetClient连接成功,偶尔获取不到结果。
在使用EthernetClient读取网页返回结果时,偶尔会遇到client.connect(server, 80)成功了,发送GET请求后,client.available()返回结果为0,但有时就正常,始终找不到原因在哪里。
2.client.connected()什么时候会返回false
看API了解到client.connected()返回EthernetClient的连接状态,通常代码都会if (!ipClient.connected())判断没有连接时,执行client.stop()方法
但是我发现,只有在出现问题1,即client.connect(server, 80)成功client.available()返回结果为0时才会执行if (!ipClient.connected())内容,如果client.available()返回结果正常,char c = ipClient.read()读取完所有数据后,确没有执行if (!ipClient.connected())内容。
3.client.stop()具体在做什么
client.stop()方法API解释是断开连接,但是我发现及时没有执行,依然可以再次创建连接。那么如果不执行client.stop()会有什么影响吗?具体client.stop()在做哪些事情?client.stop()是不是必须的呢?
小白在此感谢各位大爷了! |
|