nbNet_simple.py 文件源码

python
阅读 29 收藏 0 点赞 0 评论 0

项目:Starfish 作者: BillWang139967 项目源码 文件源码
def accept(self, fd):
        '''??????fd???fd??
        '''
        try:
            # ??fd??????????fd?
            sock_state = self.conn_state[fd]
            # ??sock??????soket?
            sock = sock_state.sock_obj
            # ??accept???????????????????conn?????socket???addr?????????
            conn, addr = sock.accept()
            # ??socket????
            conn.setblocking(0)
            # ?epoll??????socket??fd
            self.epoll_sock.register(conn.fileno(), select.EPOLLIN)
            # ???????conn???????sock
            self.setFd(conn)
            # ????fd????read epoll????????????????
            self.conn_state[conn.fileno()].state = "read"
        except socket.error as msg:
            # ECONNABORTED??TCP???????????RST
            # EAGIIN ???????????????????
            # ????accept
            if msg.args[0] in (errno.ECONNABORTED, errno.EAGAIN):
                return
            raise
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号