Overview | Package | Class | Tree | Deprecated | Index | Help
| JProfiler API
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.jprofiler.api.agent.interceptor
Class ThreadLocalStack

    java.lang.Object
      com.jprofiler.api.agent.interceptor.ThreadLocalStack

    public class ThreadLocalStack

extends java.lang.Object

A stack that saves objects in thread-local data structures. This utility class is important for cacluating payload timing where you need to save payload infos in the `Interceptor.interceptionEnter(Object, String, String, String, Object[])` method and retrieve them in the `Interceptor.interceptionExit(Object, String, String, String, Object)` method of an interceptor.

To avoid expensive synchronization and conflicts between different threads, this thread-local stack is the best solution for storing payloads. Please see the interceptor sample for an example on how to use this class.

Constructor Summary
`ThreadLocalStack()`

Method Summary
`boolean` | `isEmpty()` Checks if the thread-local stack is empty.
`java.lang.Object` | `pop()` Pops an object from the thread-local stack.
`void` | `push(java.lang.Object object)` Pushes an object onto the thread-local stack.
`int` | `size()` Returns the number of objects currently on the thread-local stack.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ThreadLocalStack

    public ThreadLocalStack()

Method Detail

### push

    public void push(java.lang.Object object)

  Pushes an object onto the thread-local stack.

  Parameters:
    `object` - the object

### pop

    public java.lang.Object pop()

  Pops an object from the thread-local stack.

  Returns:
    the object.

### size

    public int size()

  Returns the number of objects currently on the thread-local stack.

  Returns:
    the number of objects

### isEmpty

    public boolean isEmpty()

  Checks if the thread-local stack is empty.

  Returns:
    if the stack is empty or not

Overview | Package | Class | Tree | Deprecated | Index | Help
| JProfiler API
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD