Merge pull request #1844 from jrw972/monterey
[ACE_TAO.git] / TAO / DevGuideExamples / Multithreading / ThreadPool / README
blobdfab2d39cb56f6da4b7f0f2336a5024d827ba7e8
3 File: DevGuideExamples/Multithreading/ThreadPool/README
6 This directory contains a CORBA example illustrating a simple client
7 and a server with an interface Messenger.  This example is based on the
8 Getting Started example, but adds concurrent request processing
9 capabilities to the server using the thread pool concurrency model.
10 The server creates 4 threads for the thread pool.
13 How to Run
14 ----------
16 To start the server :
17 ------------------
18 ./MessengerServer
21 To start the client:
22 ------------------
23 ./MessengerClient
26 Tip:
27 ----
28 Run several clients simultaneously against the server.  Some client
29 requests should be handled by separate threads in the server.  To
30 verify this, the server returns the thread ID that handled the request
31 in the reply message that is printed by the client.  You may see the
32 same thread used to handle multiple requests, but it is unlikely that
33 the same thread will be used to handle all of the requests.
36 Exeuction via Perl Script
37 -------------------------
39 A Perl script has been created to automate the steps shown
40 above.  This script can be run via the following command:
42 ./run_test.pl
44 Here is sample output from the Perl script:
46 Starting MessengerServer
47 IOR written to file Messenger.ior
50 Starting 9 MessengerClients.
51 The server should use different threads to handle requests.
53 Reply: Message handled on thread 1620
54 Reply: Message handled on thread 1620
55 Reply: Message handled on thread 1620
56 Reply: Message handled on thread 1868
57 Reply: Message handled on thread 1592
58 Reply: Message handled on thread 1868
59 Reply: Message handled on thread 1300
60 Reply: Message handled on thread 1620
61 Reply: Message handled on thread 1620
63 NOTE:
65   Since the Perl script starts several clients simultaneously, output
66   may become garbled since each client writes its output to stdout.
68 NOTE:
70    If you run on Windows platform, go to Debug or Release directory to run the
71    script via following command:
73    perl ../run_test.pl