lifetime.py 文件源码

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

项目:aquests 作者: hansroh 项目源码 文件源码
def poll_fun_wrap (timeout, map = None):
    global _logger

    if map is None:
        map = asyncore.socket_map   

    if EXHAUST_DNS:
        asyndns.pop_all ()  

    try:        
        poll_fun (timeout, map)
    except (TypeError, OSError) as why:
        # WSAENOTSOCK
        remove_notsocks (map)

    except ValueError:
        # negative file descriptor, testing all sockets
        killed = remove_notsocks (map)
        # or too many file descriptors in select(), divide and conquer
        if not killed:          
            half = int (len (map) / 2)
            tmap = {}
            cc = 0          
            for k, v in list(map.items ()):
                tmap [k] = v
                cc += 1
                if cc == half:
                    poll_fun_wrap (timeout, tmap)
                    tmap = {}
            poll_fun_wrap (timeout, tmap)

    except:
        _logger and _logger.trace ()
        raise
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号