summaryrefslogtreecommitdiff
path: root/tests/Conn_Test.cpp
diff options
context:
space:
mode:
authorirfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1997-10-29 07:05:48 +0000
committerirfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1997-10-29 07:05:48 +0000
commit3fcd67d4f009c0538574b7ba367e557623f319d8 (patch)
tree7a19edc9020f8ea95fc09b0727dbc4b89a7100a9 /tests/Conn_Test.cpp
parent0cba4bb306fbdfcfb322b032f038ac1012d3b43c (diff)
downloadATCD-3fcd67d4f009c0538574b7ba367e557623f319d8.tar.gz
*** empty log message ***
Diffstat (limited to 'tests/Conn_Test.cpp')
-rw-r--r--tests/Conn_Test.cpp35
1 files changed, 14 insertions, 21 deletions
diff --git a/tests/Conn_Test.cpp b/tests/Conn_Test.cpp
index c3bcd9e187b..7336fe07608 100644
--- a/tests/Conn_Test.cpp
+++ b/tests/Conn_Test.cpp
@@ -23,7 +23,7 @@
#include "test_config.h"
#include "ace/SOCK_Connector.h"
-#include "ace/SOCK_Acceptor.h"
+#include "ace/LOCK_SOCK_Acceptor.h"
#include "ace/Acceptor.h"
#include "ace/Handle_Set.h"
#include "ace/Connector.h"
@@ -154,7 +154,14 @@ ACE_Hash_Addr<ACE_INET_Addr>::hash_i (const ACE_INET_Addr &addr) const
// ****************************************
-typedef ACE_Oneshot_Acceptor<Svc_Handler, ACE_SOCK_ACCEPTOR> ACCEPTOR;
+#if defined (ACE_HAS_THREAD_SAFE_ACCEPT)
+typedef ACE_SYNCH_NULL_MUTEX ACCEPTOR_LOCKING;
+#else
+typedef ACE_SYNCH_MUTEX ACCEPTOR_LOCKING;
+#endif /* ACE_HAS_THREAD_SAFE_ACCEPT */
+
+typedef ACE_LOCK_SOCK_Acceptor<ACCEPTOR_LOCKING> SOCK_ACCEPTOR;
+typedef ACE_Oneshot_Acceptor<Svc_Handler, SOCK_ACCEPTOR> ACCEPTOR;
typedef ACE_Connector<Svc_Handler, ACE_SOCK_CONNECTOR> CONNECTOR;
typedef ACE_Strategy_Connector<Svc_Handler, ACE_SOCK_CONNECTOR> STRAT_CONNECTOR;
typedef ACE_NOOP_Creation_Strategy<Svc_Handler> NULL_CREATION_STRATEGY;
@@ -409,18 +416,12 @@ static void
spawn_processes (ACCEPTOR *acceptor,
ACE_INET_Addr *server_addr)
{
-#if defined (ACE_HAS_THREAD_SAFE_ACCEPT)
- const int max_servers = n_servers;
-#else
- const int max_servers = 1;
-#endif /* ACE_HAS_THREAD_SAFE_ACCEPT */
-
- pid_t children[max_servers];
+ pid_t children[n_servers];
int i;
// Spawn off a number of server processes all of which will listen
// on the same port number for clients to connect.
- for (i = 0; i < max_servers; i++)
+ for (i = 0; i < n_servers; i++)
{
pid_t pid = ACE_OS::fork ("child");
switch (pid)
@@ -447,7 +448,7 @@ spawn_processes (ACCEPTOR *acceptor,
client ((void *) server_addr);
- for (i = 0; i < max_servers; i++)
+ for (i = 0; i < n_servers; i++)
// Shutdown the servers.
if (ACE_OS::kill (children[i], SIGTERM) == -1)
ACE_ERROR ((LM_ERROR, "(%P|%t) %p for %d\n", children[i]));
@@ -470,22 +471,12 @@ static void
spawn_threads (ACCEPTOR *acceptor,
ACE_INET_Addr *server_addr)
{
-#if defined (ACE_HAS_THREAD_SAFE_ACCEPT)
- // The OS allows multiple threads to block in accept().
if (ACE_Thread_Manager::instance ()->spawn_n
(n_servers,
ACE_THR_FUNC (server),
(void *) acceptor,
THR_NEW_LWP) == -1)
ACE_ERROR ((LM_ERROR, "(%P|%t) %p\n%a", "thread create failed"));
-#else
- // The OS only allow one thread to block in accept().
- if (ACE_Thread_Manager::instance ()->spawn
- (ACE_THR_FUNC (server),
- (void *) acceptor,
- THR_NEW_LWP) == -1)
- ACE_ERROR ((LM_ERROR, "(%P|%t) %p\n%a", "thread create failed"));
-#endif /* ACE_HAS_THREAD_SAFE_ACCEPT */
if (ACE_Thread_Manager::instance ()->spawn
(ACE_THR_FUNC (client),
@@ -557,6 +548,7 @@ template class ACE_Hash_Map_Entry<ACE_Hash_Addr<ACE_INET_Addr>, Svc_Handler *>;
template class ACE_Hash_Map_Iterator<ACE_Hash_Addr<ACE_INET_Addr>, Svc_Handler *, ACE_Null_Mutex>;
template class ACE_Hash_Map_Manager<ACE_Hash_Addr<ACE_INET_Addr>, Svc_Handler *, ACE_Null_Mutex>;
template class ACE_Hash_Map_Manager<ACE_Hash_Addr<ACE_INET_Addr>, Svc_Handler *, ACE_SYNCH_RW_MUTEX>;
+template class ACE_LOCK_SOCK_Acceptor<ACCEPTOR_LOCKING> SOCK_ACCEPTOR;
template class ACE_Oneshot_Acceptor<Svc_Handler, ACE_SOCK_ACCEPTOR>;
template class ACE_Map_Entry<ACE_HANDLE, ACE_Svc_Tuple<Svc_Handler> *>;
template class ACE_Map_Iterator<ACE_HANDLE, ACE_Svc_Tuple<Svc_Handler> *, ACE_SYNCH_RW_MUTEX>;
@@ -578,6 +570,7 @@ template class ACE_Svc_Tuple<Svc_Handler>;
#pragma instantiate ACE_Hash_Map_Iterator<ACE_Hash_Addr<ACE_INET_Addr>, Svc_Handler *, ACE_Null_Mutex>
#pragma instantiate ACE_Hash_Map_Manager<ACE_Hash_Addr<ACE_INET_Addr>, Svc_Handler *, ACE_Null_Mutex>
#pragma instantiate ACE_Hash_Map_Manager<ACE_Hash_Addr<ACE_INET_Addr>, Svc_Handler *, ACE_SYNCH_RW_MUTEX>
+#pragma instantiate ACE_LOCK_SOCK_Acceptor<ACCEPTOR_LOCKING> SOCK_ACCEPTOR;
#pragma instantiate ACE_Oneshot_Acceptor<Svc_Handler, ACE_SOCK_ACCEPTOR>
#pragma instantiate ACE_Map_Entry<ACE_HANDLE, ACE_Svc_Tuple<Svc_Handler> *>
#pragma instantiate ACE_Map_Iterator<ACE_HANDLE, ACE_Svc_Tuple<Svc_Handler> *, ACE_SYNCH_RW_MUTEX>