diff --git a/dbus_next/message_bus.py b/dbus_next/message_bus.py
index 8bb830d..b78f612 100644
--- a/dbus_next/message_bus.py
+++ b/dbus_next/message_bus.py
@@ -386,6 +386,7 @@ def disconnect(self):
self._user_disconnect = True
try:
self._sock.shutdown(socket.SHUT_RDWR)
+ self._sock.close()
except Exception:
logging.warning('could not shut down socket', exc_info=True)