Main Page Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members Related Pages

# ACE_LOCK_SOCK_Acceptor< ACE_LOCK > Class Template Reference

Specialize <ACE_SOCK_Acceptor> to lock around <accept>;. More...

`#include <LOCK_SOCK_Acceptor.h>`

Inheritance diagram for ACE_LOCK_SOCK_Acceptor< ACE_LOCK >:

[legend]
Collaboration diagram for ACE_LOCK_SOCK_Acceptor< ACE_LOCK >:

[legend]
List of all members.

## Public Methods

int | accept (ACE_SOCK_Stream &new_stream, ACE_Addr *remote_addr=0, ACE_Time_Value *timeout=0, int restart=1, int reset_new_handle=0) const
| Accept the connection under the control of the <ACE_LOCK>.
ACE_LOCK & | lock (void)
| Return a reference to the lock.

## Protected Attributes

ACE_LOCK | lock_
| Type of locking mechanism.

## Detailed Description

### template<class ACE_LOCK>
class ACE_LOCK_SOCK_Acceptor< ACE_LOCK >

Specialize <ACE_SOCK_Acceptor> to lock around <accept>;.

This class is necessary since some OS platforms (e.g., Solaris 2.5) do not allow multiple threads/processes to simultaneously call <accept> on the same listen-mode port/socket. Thus, we need to protect against multiple concurrent accesses by using the appropriate type of lock.

## Member Function Documentation

template<class ACE_LOCK>
int ACE_LOCK_SOCK_Acceptor< ACE_LOCK >::accept | ( | ACE_SOCK_Stream & | new_stream,
|  | ACE_Addr * | remote_addr = 0,
|  | ACE_Time_Value * | timeout = 0,
|  | int | restart = 1,
|  | int | reset_new_handle = 0
| ) | const

| Accept the connection under the control of the <ACE_LOCK>. Reimplemented from ACE_SOCK_Acceptor.

template<class ACE_LOCK>
ACE_LOCK & ACE_LOCK_SOCK_Acceptor< ACE_LOCK >::lock | ( | void |  | ) |

| Return a reference to the lock.

## Member Data Documentation

template<class ACE_LOCK>
ACE_LOCK ACE_LOCK_SOCK_Acceptor< ACE_LOCK >::lock_`[protected]`

| Type of locking mechanism.

The documentation for this class was generated from the following files:

- /export2/deucetmp/bala/release_try/ACE_wrappers/ace/LOCK_SOCK_Acceptor.h
- /export2/deucetmp/bala/release_try/ACE_wrappers/ace/LOCK_SOCK_Acceptor.cpp