ssgnh

Results 6 comments of ssgnh

how to generate the file “mraa.py” when run my python3 file,it will return erro on "import mraa"

因为我发送的频率很快,断网后,内核缓存溢出很快,就会有Broken pipe错误。我测试过,断网后,调用的send函数依然会发送成功,导致断网重连不起作用。我换了种思路,modbus是一问一答,既然断网时问是成功发送的(实际发送到网络硬件了),但是答确不是。我通过多次接收不到回答数据,便认定断网,关闭socket,然后执行connect,这种思路类似于心跳,但挺好使。 3次返回-1是我自定义的,第一次返回-1时,我就发送相同的帧数据(避免传输丢帧导致不回复情况),也就是我发3帧相同数据依然不回复我,便认为通讯故障

我又换个例子测试了下,发现,在正常连接成功后,断开网线,‘rc = ctx->backend->send(ctx, msg, msg_length)’返回有值,即使断线了还是正常返回发送字节数,持续了一两分钟后,报Resource temporarily unavailable错误,再过段时间,线程好像就卡住了,或者是死掉了(没写检测线程程序,不知道是不是挂掉了),线程循环里的打印程序就不打印了。查了下,应该是socket 发送缓冲区,应该怎么解决

我也遇到相似问题,issue:https://github.com/stephane/libmodbus/issues/734 ,因为我发送的频率很快,断网后,内核缓存溢出很快,就会有Broken pipe错误。我测试过,断网后,调用的send函数依然会发送成功,导致断网重连不起作用。我换了种思路,modbus是一问一答,既然断网时问是成功发送的(实际发送到网络硬件了),但是答确不是。我通过多次接收不到回答数据,便认定断网,关闭socket,然后执行connect,这种思路类似于心跳,但挺好使,希望对你有用。

刚发现,这应该是bug, 自动换行是默认打开的,但是首次打开软件是不生效的 首次打开默认参数: ![image](https://github.com/user-attachments/assets/3cafbb0f-45a7-43cc-be6b-9159ab1cbb0d) 关闭自动换行再打开自动换行: ![image](https://github.com/user-attachments/assets/b8720a24-5851-4359-b0fa-e0eb18b98d87)