---
name: "ACE_Null_Token"
section: "3"
platform: "linux"
package: "libace-doc"
version: "5.0.7-4"
release: "Debian 2.2 (Potato)"
platforms: ["linux"]
url: "https://new.carta.tech/ACE_Null_Token"
---

# ACE\_Null\_Token(3)

No op class for nonthreaded platform protocols.

## NAME

ACE\_Null\_Token -  No op class for nonthreaded platform protocols.

## SYNOPSIS

```
#include <ace/Local_Tokens.h>
class ACE_Null_Token : public ACE_Token_Proxy
{
  public:
    ACE_Null_Token (void);
    ~ACE_Null_Token (void);
    inline virtual int acquire (int = 0, void (* )(
        void *) = 0,
        ACE_Synch_Options & = ACE_Synch_Options::defaults
        );
    inline virtual int renew (
        int = -1,
        ACE_Synch_Options & = ACE_Synch_Options::defaults
        );
    inline virtual int tryacquire (void (* /* sleep_hook */)(
        void *) = 0
        );
    inline ACE_Synch_Options::defaults);
    inline ACE_Synch_Options::defaults);
    inline virtual ACE_Token_Proxy *clone (void) const;
    void dump (void) const;
    inline virtual ACE_Tokens *create_token (const ASYS_TCHAR *);
};
```

## DESCRIPTION

This file contains definitions for the following classes:

public:\
   7\. ACE\_Token\_Proxy\
   8\. ACE\_Null\_Token : public ACE\_Token\_Proxy\
   9\. ACE\_Local\_Mutex : public ACE\_Token\_Proxy\
   \*. ACE\_Local\_RLock : public ACE\_Local\_Mutex\
   &. ACE\_Local\_WLock : public ACE\_Local\_Mutex private:\
   1\. ACE\_TOKEN\_CONST\
   3\. ACE\_TPQ\_Entry\
   b. ACE\_TSS\_TPQ\_Entry\
   c. ACE\_TPQ\_Iterator\
   4\. ACE\_Token\_Proxy\_Queue\
   5\. ACE\_Tokens\
   6\. ACE\_Mutex\_Token : public ACE\_Tokens\
   12\. ACE\_RW\_Token : public ACE\_Tokens\
   a. ACE\_Token\_Name

 Note that the locking classes defined in this file are \*not\*\
  intended to be used as general-purpose synchronization\
  mechanisms, such as mutexes or semaphores.  Instead, you should\
  use the ACE\_Recursive\_Thread\_Mutex, ACE\_Thread\_Mutex,\
  ACE\_Thread\_Semaphore, etc., that are defined in\
  $ACE\_ROOT/ace/Synch.h and $ACE\_ROOT/ace/Synch\_T.h or the\
  ACE\_Token that's defined in $ACE\_ROOT/ace/Token.h.

## PUBLIC MEMBERS

```
ACE_Null_Token (void);
```

Construction.

```
~ACE_Null_Token (void);
```

Destructor

```
inline virtual int acquire (int = 0, void (* )(
    void *) = 0,
    ACE_Synch_Options & = ACE_Synch_Options::defaults
    );
```

Acquire.

```
inline virtual int renew (
    int = -1,
    ACE_Synch_Options & = ACE_Synch_Options::defaults
    );
```

Renew.

```
inline virtual int tryacquire (void (* /* sleep_hook */)(void *) = 0);
```

Try acquire.

```
inline ACE_Synch_Options::defaults);
```

Release.

```
inline ACE_Synch_Options::defaults);
```

Remove.

```
inline virtual ACE_Token_Proxy *clone (void) const;
```

Return a dynamically allocated clone of the derived class.

```
void dump (void) const;
```

Dump the state of the class.

```
inline virtual ACE_Tokens *create_token (const ASYS_TCHAR *);
```

Do not allow the Token Manager to create us.

## AUTHOR

Karl-Heinz Dorn kdorn@erlh.siemens.de, Douglas C. Schmidt schmidt@cs.wustl.edu, and Tim Harrison harrison@cs.wustl.edu

## LIBRARY

ace
