#ifndef _ACCEPTOR_H
#define _ACCEPTOR_H
+#include "thread.h"
+
int create_server_socket(int port);
// A thread that accepts new connections on a given socket,
// and hands them off to the server pool.
-class AcceptorThread {
+class AcceptorThread : public Thread {
public:
AcceptorThread(int server_sock);
- void run();
- void stop();
private:
- // Recovers the this pointer, and hands over control to do_work().
- static void *do_work_thunk(void *arg);
-
- void do_work();
+ virtual void do_work();
int server_sock;
-
- pthread_t worker_thread;
- volatile bool should_stop;
};
#endif // !defined(_ACCEPTOR_H)