9

Ubuntu で c++ を実行します。この方法でソケットを開きます。

socket(AF_PACKET, SOCK_RAW, IPPROTO_RAW))

利用終了後はどうすればいいですか?プログラムが実行されている限り、一部のソケットが使用されます。しばらくしてから確認する必要がありますか? ソケットがまだ存在するかどうかを確認するには?

4

2 に答える 2

13

closeファイル記述子を呼び出すまで、ソケットは存在します。生の IP ソケットがあるため、「生きている」という概念はありません。使い終わったら閉じてください。

于 2012-08-17T12:55:04.417 に答える
10

そのドキュメント/マニュアルページにあるように、socket() は開いているファイル記述子を返すか、失敗した場合は -1 を返します。つまり、他のファイル記述子を閉じるのと同じように、それを閉じる必要があります。

close(sockfd);
于 2012-08-17T12:59:06.937 に答える