X-Git-Url: https://git.sesse.net/?p=cubemap;a=blobdiff_plain;f=acceptor.h;fp=acceptor.h;h=97672338a133b0006b9203a8e33903057dd0aa33;hp=5cd579da11381f731aa9d5d46dcda3a3f9113301;hb=e1722a5c0341fd541ce57f1eed4dc76cbd3efe07;hpb=99738bd173040bf4e2d2d42ffc8c7ab8c105cf75 diff --git a/acceptor.h b/acceptor.h index 5cd579d..9767233 100644 --- a/acceptor.h +++ b/acceptor.h @@ -1,26 +1,20 @@ #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)