【发布时间】:2021-05-03 16:41:21
【问题描述】:
如果一个 unix 套接字绑定到一个路径,listen()s 并做一些工作,之后它被关闭,套接字“文件”保留在文件系统中。但是如果我尝试connect() 到那条路径,我会得到
Connect errno:111
Connection refused
那么“神器”之后还剩下什么?它仍然是文件系统上的inode(我可以用ls 看到它),但它没有绑定,没有监听,我不能cat 它,否则我得到
cat: /tmp/unix.str: No such device or address
那么inode 还剩下什么?我怎样才能让这个“工件”再次活跃、绑定和监听套接字( 不删除它,并使用该路径创建新的套接字)?
-
“死”的本地套接字的目的是什么(为什么它关闭后不删除,当它不再使用时)?
-
我怎样才能恢复“死”的套接字? (主要问题)
-
谁负责错误
connection refused?不是bind()ed 还是不是listen()ing?
【问题讨论】:
标签: c linux sockets unix-socket