sub run { #this is called via a button from the GUI #Call the Module $threadRun = Thread -> new (\&printExcel::Edit, $option,$path); #print the status &printStatus(); } sub printStatus { print "\n\n\n\n\n\nprint status\n"; #hier hol ich mir den neuen status my @NewStatus = &printExcel::GetStatus(); print "new status: @NewStatus\n"; #now wait 5 seconds an call yourself $Basic_wd -> after (5000, &printStatus(@NewStatus)); }