perl-5.22.1
shutdown SOCKET,HOW

Shuts down a socket connection in the manner indicated by HOW, which has the same interpretation as in the syscall of the same name.

同名のシステムコールと同じように解釈される HOW によって、 指定された方法でソケット接続のシャットダウンを行ないます。

    shutdown(SOCKET, 0);    # I/we have stopped reading data
    shutdown(SOCKET, 1);    # I/we have stopped writing data
    shutdown(SOCKET, 2);    # I/we have stopped using this socket

This is useful with sockets when you want to tell the other side you're done writing but not done reading, or vice versa. It's also a more insistent form of close because it also disables the file descriptor in any forked copies in other processes.

これは、こちらがソケットを書き終わったが読み終わっていない、 またはその逆を相手側に伝えたいときに便利です。 これはその他のプロセスでフォークしたファイル記述子のコピーも 無効にするので、よりしつこい閉じ方です。

Returns 1 for success; on error, returns undef if the first argument is not a valid filehandle, or returns 0 and sets $! for any other failure.

成功時には 1 を返します; エラーの場合、最初の引数が有効なファイルハンドルでない場合は undef を 返し、その他のエラーの場合は 0 を返して$! をセットします。