Beispiel #1
0
 def go(self, timeout=30.0, granularity=15):
     global socket_map
     last_event_check = 0
     while socket_map:
         now = int(time.time())
         if (now - last_event_check) >= granularity:
             last_event_check = now
             fired = []
             # yuck. i want my lisp.
             i = j = 0
             while i < len(self.events):
                 when, what = self.events[i]
                 if now >= when:
                     fired.append(what)
                     j = i + 1
                 else:
                     break
                 i += 1
             if fired:
                 self.events = self.events[j:]
                 for what in fired:
                     what(self, now)
         # sample the number of channels
         n = len(asyncore.socket_map)
         self.num_channels = n
         if n > self.max_channels:
             self.max_channels = n
         asyncore.poll(timeout)
Beispiel #2
0
 def go (self, timeout=30.0, granularity=15):
     global socket_map
     last_event_check = 0
     while socket_map:
         now = int(time.time())
         if (now - last_event_check) >= granularity:
             last_event_check = now
             fired = []
             # yuck. i want my lisp.
             i = j = 0
             while i < len(self.events):
                 when, what = self.events[i]
                 if now >= when:
                     fired.append (what)
                     j = i + 1
                 else:
                     break
                 i += 1
             if fired:
                 self.events = self.events[j:]
                 for what in fired:
                     what (self, now)
         # sample the number of channels
         n = len(asyncore.socket_map)
         self.num_channels = n
         if n > self.max_channels:
             self.max_channels = n
         asyncore.poll (timeout)
Beispiel #3
0
        sys.argv.remove ('-m')
    else:
        maps = 0

    if maps:
        r = rbl (server)
    else:
        r = caching_resolver(server)

    count = len(sys.argv) - 1

    def print_it (host, ttl, answer):
        global count
        print('%s: %s' % (host, answer))
        count -= 1
        if not count:
            r.close()

    for host in sys.argv[1:]:
        if reverse:
            r.resolve_ptr (host, print_it)
        elif maps:
            r.resolve_maps (host, print_it)
        else:
            r.resolve (host, print_it)

    # hooked asyncore.loop()
    while asyncore.socket_map:
        asyncore.poll (30.0)
        print('requests outstanding: %d' % len(r.request_map))