• listen


    SYNOPSIS 概述

    #include <sys/socket.h>

    int listen(int s, int backlog);

    DESCRIPTION 描述

    在接收连接之前,首先要使用 socket(2) 创建一个套接字,然后调用 listen 使其能够自动接收到来的连接并且为连接队列指定一个长度限制. 之后就可以使用 accept(2) 接收连接. listen 调用仅适用于 SOCK_STREAM 或者 SOCK_SEQPACKET 类型的套接字.

    参数 backlog 指定未完成连接队列的最大长度.如果一个连接请求到达时未完成连接队列已满,那么客户端将接收到错误 ECONNREFUSED. 或者,如果下层协议支持重发,那么这个连接请求将被忽略,这样客户端在重试的时候就有成功的机会.

    NOTES 注意

    在TCP套接字中 backlog 的含义在Linux 2.2中已经改变. 它指定了已经完成连接正等待应用程序接收的套接字队列的长度,而不是未完成连接的数目.未完成连接套接字队列的最大长度可以使用 tcp_max_syn_backlog sysctl设置当打开syncookies时不存在逻辑上的最大长度,此设置将被忽略.参见 tcp(7) 以获取更多信息.

    RETURN VALUE 返回值

    函数执行成功时返回0.错误时返回-1,并置相应错误代码. errno

    ERRORS 错误

    EBADF
    参数 s 不是合法的描述符.
    ENOTSOCK
    参数 s 不是一个套接字.
    EOPNOTSUPP
    套接字类型不支持 listen 操作. 
  • 相关阅读:
    Samba服务器配置
    Showdoc
    wkhtmltoimage(网页剪切功能)
    GTID数据库备份
    awstats日志分析
    docker桥接
    php的opcache缓存扩展(php页面代码刷新速度)
    Pureftp SSL/TLS配置
    ssh-keygen配置
    systemctl使用
  • 原文地址:https://www.cnblogs.com/fanweisheng/p/11088705.html
Copyright © 2020-2023  润新知