On the way to a stable status, i noticed that unchecked situations can lead to orphan threads. This has the side effect that the server can not shutdown (cleanly) if these thread are not terminated.
I propose to create a central thread registry, where also there is the notion of ownership. So wenn a driver is deactivated all it's thread are terminated, same for clients and so on.
This is not so important in normal operation mode, but it would enable cleaner shutdown / restart sequences.