Thank you guys, indeed, calling join() for each thread actually solved the problem. I misunderstood it and call join() right after start() so it didn't work the way I wanted.
for i in range(args.threads): children[i].join() -- http://mail.python.org/mailman/listinfo/python-list