diff options
Diffstat (limited to 'docs/tutorials/007/page04.html')
-rw-r--r-- | docs/tutorials/007/page04.html | 87 |
1 files changed, 0 insertions, 87 deletions
diff --git a/docs/tutorials/007/page04.html b/docs/tutorials/007/page04.html deleted file mode 100644 index 8f5a04a13d9..00000000000 --- a/docs/tutorials/007/page04.html +++ /dev/null @@ -1,87 +0,0 @@ -<!-- $Id$ --> -<HTML> -<HEAD> - <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1"> - <META NAME="GENERATOR" CONTENT="Mozilla/4.04 [en] (X11; I; Linux 2.0.32 i486) [Netscape]"> - <META NAME="Author" CONTENT="James CE Johnson"> - <META NAME="Description" CONTENT="A first step towards using ACE productively"> - <TITLE>ACE Tutorial 007</TITLE> -</HEAD> -<BODY TEXT="#000000" BGCOLOR="#FFFFFF" LINK="#000FFF" VLINK="#FF0F0F"> - -<CENTER><B><FONT SIZE=+2>ACE Tutorial 007</FONT></B></CENTER> - -<CENTER><B><FONT SIZE=+2>Creating a thread-pool server</FONT></B></CENTER> -<HR> - -<P>Something new this time is <A HREF="client_acceptor.cpp">client_acceptor.cpp</A>. -I finally had enough code to move it out of the header. - -<P> -<HR WIDTH="100%"> -<PRE> -<font color=red>// $Id$</font> - -<font color=blue>#include</font> "<font color=green>client_acceptor.h</font>" - -<font color=red>/* Construct ourselves with the chosen concurrency strategy. Notice - that we also set our Thread_Pool reference to our private instance. */</font> -<font color=#008888>Client_Acceptor::Client_Acceptor</font> (int concurrency) - : concurrency_ (concurrency), - the_thread_pool_ (private_thread_pool_) -{ -} - -<font color=red>/* Construct ourselves with a reference to somebody else' Thread_Pool. - Obvioulsy our concurrency strategy is "<font color=green>thread_pool_</font>" at this point. */</font> -<font color=#008888>Client_Acceptor::Client_Acceptor</font> (Thread_Pool &thread_pool) - : concurrency_ (thread_pool_), - the_thread_pool_ (thread_pool) -{ -} - -<font color=red>/* When we're destructed, we may need to cleanup after ourselves. If - we're running with a thread pool that we own, it is up to us to - close it down. */</font> -<font color=#008888>Client_Acceptor::~Client_Acceptor</font> (void) -{ - if (this->concurrency() == thread_pool_ && thread_pool_is_private ()) - thread_pool ()->close (); -} - -<font color=red>/* Similar to the destructor (and close() below) it is necessary for - us to open the thread pool in some circumstances. - - Notice how we delegate most of the open() work to the open() method - of our baseclass. */</font> -int -<font color=#008888>Client_Acceptor::open</font> (const ACE_INET_Addr &addr, - ACE_Reactor *reactor, - int pool_size) -{ - if (this->concurrency() == thread_pool_ && thread_pool_is_private ()) - thread_pool ()->open (pool_size); - - return <font color=#008888>inherited::open</font> (addr, reactor); -} - -<font color=red>/* Here again we find that we have to manage the thread pool. Like - open() we also delegate the other work to our baseclass. */</font> -int -<font color=#008888>Client_Acceptor::close</font> (void) -{ - if (this->concurrency() == thread_pool_ && thread_pool_is_private ()) - thread_pool ()->close (); - - return <font color=#008888>inherited::close</font> (); -} - -</PRE> -<HR WIDTH="100%"> - -<P>Nothing really surprising here. Most of it just manages the Thread_Pool. - -<P> -<P><HR WIDTH="100%"> -<CENTER>[<A HREF="../online-tutorials.html">Tutorial Index</A>] [<A HREF="page05.html">Continue This Tutorial</A>]</CENTER> - |