Вы должны использовать опцию fork
, которая обрабатывает соединение в дочернем процессе, заставляя родительский процесс пытаться обрабатывать больше соединений.
В первом терминале:
$ socat - UNIX-LISTEN:/tmp/comm,fork
Во втором терминале:
$ socat UNIX-CONNECT:/tmp/comm -
Нажмите Ctrl+C во втором терминале, переключитесь на первый терминал и увидите, что ваш сервер все еще работает.