It could use a Queue of some kind rather than just pushing onto a deque between threads [1]? Then it would idly wait for the results_thread_main to push results.
I guess that might be what Mitogen does (along with other improvements), a faster Ansible strategy [2].