我目前正在做一些应用程序稳定性测试,并且在调用以下方法时遇到了问题;
vector<char> buffer( 256 );
received = recv( fd, buffer.data(), buffer.size(), MSG_NOSIGNAL );
在这种情况下fd
是一个 TCP 套接字。当调用上面的代码并且同时套接字的服务器端以一种或另一种方式关闭时,我得到以下信号;
SIGBUS(信号SIGBUS:非法对齐)
它似乎只发生在 Android 6.0.1 上,我似乎无法“忽略”使用 SIGBUS
signal(SIGBUS, SIG_IGN)
有没有其他人遇到过这个问题,解决这个问题的最佳方法是什么?