As in the issue name - what is the reason why desock uses threads instead of performing all the operations in the main thread?