R..*_*R.. 10
答案在规范中send:
[EPIPE]插座关闭以进行写入,或者插座处于连接模式且不再连接.在后一种情况下,如果套接字的类型为SOCK_STREAM或SOCK_SEQPACKET且未设置MSG_NOSIGNAL标志,则会向调用线程生成SIGPIPE信号.
http://pubs.opengroup.org/onlinepubs/9699919799/functions/send.html
因此,没有,写入数据报套接字不产生SIGPIPE或EPIPE错误.
开放组是一回事,Apple是另一回事.当写入死UDP套接字时,绝对有可能在iOS上获得一个SIGPIPE ,因为我最近发现了一些崩溃日志.iOS倾向于在应用程序处于后台时关闭UDP套接字,写入这些套接字可以弹出SIGPIPE.
从我的崩溃日志(由testflightapp提供):
例外最新受害者出现
SIGPIPE
2 libsystem_c.dylib 0x32df47ec _sigtramp + 48
3即时通话0x0005b10e - [IPRSNetDatagramSocket发送:大小:到:](iprs_iphone_net.m:671)...
不记得在Linux,Solaris或Windows上发生这种情况 - 尽管我从未试图关闭套接字然后写入它.
| 归档时间: |
|
| 查看次数: |
2375 次 |
| 最近记录: |