Hvis du kigger i listen af C/C++ artikler her på udvikleren vil du finde fem artikler om netværksprogrammering og en om multithreading. Det er bare at komme i gang
Strictly speaking behøver du ikke multithreading for at håndtere flere klienter. Du kan også bruge nonblocking sockets og en polling mekanisme. Det ser ud til, at du bruger Linux (ud fra inkluderede header filer), så der kan du se på epoll funktionerne.
Jeg regner med en dag at skrive en artikel om select()/poll()/epoll() funktionerne, for de er temmeligt rare at have med at gøre.