def METHOD_NAME(self, session=None, display_period=None): 
    factor= 10
    if self.item % factor == 0:
        seq = ["|", "/", "-", "\\", "-"]
        print ("{:s}".format(seq[(self.item//factor)%len(seq)]),end="\b", flush=True)
    self.item +=1
    if display_period and time.time() - self.last_show > display_period: # display the event queue every minute
        print ("*"*40)
        print ("EVENT QUEUE")
        self.last_show = time.time()
        for q in self.queue:
            print ("{0:6.2f}: id.{1:04d}".format(q[0]-time.time(), q[1]), q[2])
        if session:
            print ("-"*30)
            for s in session.session_manager.session_table:
                s_id = "{}-{}/{}-{}".format(s[0], s[1], s[2],s[3])
                print ("{:10} |".format(s_id), end="")
                if isinstance(session.session_manager.session_table[s], frag_send.FragmentNoAck):
                    print ("Sending NoAck")
                elif isinstance(session.session_manager.session_table[s], frag_recv.ReassemblerNoAck):
                    print ("Receiving NoAck ", end="")
                    print (len(session.session_manager.session_table[s].tile_list), "tiles")
                else:
                    print (session.session_manager.session_table[s])
        print ("*"*40)
    while len(self.queue) > 0:
        self.queue.sort()
        wake_up_time = self.queue[0][0]
        if time.time() < wake_up_time:
            return
        event_info = self.queue.pop(0)
        self.clock, event_id, callback, args, session_id = event_info
        self.current_event_id = event_id
        if self.observer is not None:
            self.observer("sched-pre-event", event_info)
        callback(*args)
        if self.observer is not None:
            self.observer("sched-post-event", event_info)
        print("Queue running event -> {}, callback -> {}".format(event_id, callback.__name__))