Na stranu što ti strategija nije dobra (nov thread za svakog klijenta), u principu nešto ovako rešava tvoj problem:
Kreiraj slobodnu funkciju run, ovako nekako
Code:
void run (void* obj)
{
server* srv = reinterpret_cast<server*>(obj);
srv->response();
}
Kad potzoveš pthread_create, prosledi tu funkciju kao pretposlednji parametar, a this kao poslednji i to je u principu to.
Ili još bolje, nađi neku gotovu C++ biblioteku za threading umesto da se gnjaviš pthreads-ima.