At least if you use a language like Erlang, I suppose. (Although I think that wouldn't be OS threading, but still).
Erlang threads (processes actually), are very different from OS threads. They are extremely lightweight and allow you to do this kind of event driven networking with threaded code.