Right now you just get whatever timeout the underlying OS decides to give you, and apparently it's very long (or maybe infinite). This is especially a problem for connect methods, where there's no object that can be forcibly closed from other threads.