blob: c7763e3ed0457ff6c3fe6e3f4764191096babaea (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
Presently, this directory contains only one example application for
SPIPEs. The test source code is contained in SPIPE-acceptor.h and
SPIPE-connector.h.
The SPIPE-acceptor example illustrates how named pipes are used on NT.
Once the server establishes a connection to a single client, it spawns
a thread pool to handle incoming requests via the proactor event loop.
That is, a separate thread from the pool is used to process each
message sent by a client. The size of the thread pool can be
specified by command-line arguments. This example leverages the
queueing performed by the NT kernel to trivially implement a thread
pool architecture.
test_spipe_acceptor has the following command-line arguments:
test_spipe_acceptor -t <threads>
<threads> specifies the size of the thread-pool running in the
proactor event loop.
Here's how to run the tests:
% test_spipe_acceptor -t 1000000
starting up daemon test_sock_acceptor
Opening acepipe
hello
% test_spipe_connector
starting up daemon test_sock_connector
Opening acepipe
activating 5
please enter input..: hello
There are a number of other options that you can provide. Please see
the source code for details.
|