Попробую ещё упростить чтоб было более наглядно:
def recurs_mod_loop(pi,i) :
...
node = conn_pipes[pi][i]
if node.workloop_in() >= 0 :
if i < max_conn_pipes[pi] :
recurs_mod_loop(pi,i+1)
...
while True :
...
pi = 0
while pi < len(conn_pipes):
recurs_mod_loop(pi,0)
pi += 1
...
Что-то наподобие вашего примера я запускал - как раз с ГТК и циклом который отписывается через некоторый интервал времени.
ЗЫ. питон - разработка быстро идёт, что нравится. Не нравится - GIL.