X-Git-Url: http://sru.miketaylor.org.uk/?a=blobdiff_plain;f=src%2Fmsg-thread.h;h=38f5e71d1970bcd7e38b3c9084e9965fb8f70ca9;hb=8dc6d0bc4ddbb2d37b3aafd93396a0e4a8e87560;hp=0d0729f12ecb6c5a6d76dc3663d396c8b6a10d2d;hpb=7f81d5b3aa6b9d7e4c5c1e02c91dd416eb97d19e;p=yazproxy-moved-to-github.git diff --git a/src/msg-thread.h b/src/msg-thread.h index 0d0729f..38f5e71 100644 --- a/src/msg-thread.h +++ b/src/msg-thread.h @@ -1,4 +1,4 @@ -/* $Id: msg-thread.h,v 1.1 2005-05-30 20:08:58 adam Exp $ +/* $Id: msg-thread.h,v 1.8 2006-03-29 13:33:47 adam Exp $ Copyright (c) 1998-2005, Index Data. This file is part of the yaz-proxy. @@ -27,13 +27,14 @@ Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA #include #endif -#include +#include #include class IMsg_Thread { public: virtual IMsg_Thread *handle() = 0; virtual void result() = 0; + virtual ~IMsg_Thread(); }; class Msg_Thread_Queue_List { @@ -53,9 +54,9 @@ class Msg_Thread_Queue { Msg_Thread_Queue_List *m_list; }; -class Msg_Thread : public IYazSocketObserver { +class Msg_Thread : public yazpp_1::ISocketObserver { public: - Msg_Thread(IYazSocketObservable *obs); + Msg_Thread(yazpp_1::ISocketObservable *obs, int no_threads); virtual ~Msg_Thread(); void socketNotify(int event); void put(IMsg_Thread *m); @@ -63,14 +64,22 @@ class Msg_Thread : public IYazSocketObserver { void run(void *p); int m_fd[2]; private: - IYazSocketObservable *m_SocketObservable; - pthread_t m_thread_id; + yazpp_1::ISocketObservable *m_SocketObservable; + int m_no_threads; + pthread_t *m_thread_id; Msg_Thread_Queue m_input; Msg_Thread_Queue m_output; pthread_mutex_t m_mutex_input_data; pthread_cond_t m_cond_input_data; pthread_mutex_t m_mutex_output_data; - pthread_cond_t m_cond_output_data; bool m_stop_flag; }; +/* + * Local variables: + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + * vim: shiftwidth=4 tabstop=8 expandtab + */ +