在Ubuntu上运行c ++.我用这种方式打开socket:
socket(AF_PACKET, SOCK_RAW, IPPROTO_RAW))
Run Code Online (Sandbox Code Playgroud)
在使用结束时我需要做什么?只要程序运行,就会使用一些套接字,我需要检查一下吗?看看socket是否仍然存在?
Ker*_* SB 11
套接字存在,直到您调用close其文件描述符.由于你有一个原始的IP套接字,所以没有"活着"的概念.完成使用后关闭它.
小智 9
正如其docs/man页面所说,socket()返回一个打开的文件描述符,如果失败则返回-1.这意味着您必须关闭它,因为您将关闭任何其他文件描述符:
close(sockfd);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
38351 次 |
| 最近记录: |