Oracle Coherence for C++ API
Release 3.6.1.0

E18813-01

ThreadLocalReference Class Reference

#include <coherence/lang/ThreadLocalReference.hpp>

Inherits Object, and Reference.

List of all members.


Detailed Description

ThreadLocalReferences provide a means to store a Handle to an Object in thread local storage.

A single native thread-local is used to manage all ThreadLocalReferences, which means that users are free to allocate any number of ThreadLocalReferences.

The memory associated with a thread's ThreadLocals is automatically freed when then thread terminates. The memory associated with a non-static ThreadLocalReference will be automatically freed at some point after the ThreadLocalReference has been reclaimed, and is done in such a way that repeated creation and destruction of ThreadLocalReferences will not leak memory.


Public Types

typedef spec::Handle  Handle
  ThreadLocalReference Handle definition.
typedef spec::View  View
  ThreadLocalReference View definition.
typedef spec::Holder  Holder
  ThreadLocalReference Holder definition.

Public Member Functions

virtual void  toStream (std::ostream &out) const
  Output a human-readable description of this Object to the given stream.

coherence::lang::operator<<(std::ostream, Object::View) is defined and will call into the toStream method, to output Objects. If a managed String object is desired, the COH_TO_STRING macro can be used to build up a String from streamable contents.

 Object::View vKey   = ...
 Object::View vValue = ...
 std::cout << vKey << " = " << vValue << std::endl;

 String::Handle hs = COH_TO_STRING(vKey << " = " << vValue);
Parameters:
out  the stream used to output the description

virtual void  set (Object::Holder hObject)
  Specify the Object to be referenced by the calling thread.
virtual Object::Holder  get () const
  Return a Holder to the calling threads referenced Object, or NULL if none has been set for the thread.
virtual Object::Holder  get ()
  Return a Holder to the calling threads referenced Object, or NULL if none has been set for the thread.

Protected Member Functions

  ThreadLocalReference ()
  Create a new ThreadLocalReference.

Constructor & Destructor Documentation

ThreadLocalReference (  )  [protected]

Create a new ThreadLocalReference.

Returns:
a handle to the new ThreadLocalReference

Member Function Documentation

virtual void set ( Object::Holder  hObject  )  [virtual]

Specify the Object to be referenced by the calling thread.

Parameters:
ohObject  the referenced object

Implements Reference.

virtual Object::Holder get (  )  const [virtual]

Return a Holder to the calling threads referenced Object, or NULL if none has been set for the thread.

Returns:
a Holder to the referenced Object

Implements Reference.

virtual Object::Holder get (  )  [virtual]

Return a Holder to the calling threads referenced Object, or NULL if none has been set for the thread.

Returns:
a Holder to the referenced Object

Implements Reference.


The documentation for this class was generated from the following file:
Copyright © 2000, 2010, Oracle and/or its affiliates. All rights reserved.