mkfifo()를 이용하여 named pipe를 해보는데
받는 쪽이 사라지니 보내는 애가 갑자기 에러도 없이 죽어
gdb로 확인해보니 SIGPIPE가 전달되었고 그로 인해서 프로세스가 종료 된 것으로 보인다.
Program received signal SIGPIPE, Broken pipe. 0x00007ffff7af2104 in __GI___libc_write (fd=3, buf=0x7ffff76e1010, nbytes=3145728) at ../sysdeps/unix/sysv/linux/write.c:27 27 ../sysdeps/unix/sysv/linux/write.c: 그런 파일이나 디렉터리가 없습니다. |
[링크 : https://jacking75.github.io/linux_socket_sigpipe/]
gdb 에서 무시하게 하려면 아래의 명령어를 입력하라고 한다.
handle SIGPIPE nostop pass pass |
'Linux API > linux' 카테고리의 다른 글
‘F_SETPIPE_SZ’ undeclared (0) | 2022.10.20 |
---|---|
linux fifo (0) | 2022.10.18 |
linux ipc 최대 데이터 길이 (0) | 2022.10.11 |
ipc 성능 비교 (0) | 2022.09.21 |
posix message queue (0) | 2022.09.21 |