ChatKit-OC icon indicating copy to clipboard operation
ChatKit-OC copied to clipboard

当使用 socket 进行网络连接时,如果连接中断,在默认情况下,你的 process 会收到一个 SIGPIPE 信号。如果你没有处理这个信号,app 会直接 crash

Open ConnyYue opened this issue 8 years ago • 1 comments

在全局范围内忽略这个信号 signal(SIGPIPE, SIG_IGN); 需要注意的是,这个方法是全局通用的,所有的 SIGPIPE 信号都将被忽略

在一开始的时候设置 socket 不要发送 SIGPIPE 信号 /// sock 就是设置不发送 SIGPIPE 信号的 socket 变量 int value = 1; setsockopt(sock, SOL_SOCKET, SO_NOSIGPIPE, &value, sizeof(value));

ConnyYue avatar Sep 04 '17 10:09 ConnyYue

建议提pr

ChenYilong avatar Sep 04 '17 10:09 ChenYilong