-
- All Implemented Interfaces:
-
java.io.Serializable,java.lang.Cloneable,java.lang.Iterable,java.util.Collection,java.util.Deque,java.util.List,java.util.Queue
public class PendingTrace extends LinkedList<DDSpan>
-
-
Method Summary
Modifier and Type Method Description longgetCurrentTimeNano()Current timestamp in nanoseconds. voidregisterSpan(DDSpan span)voiddropSpan(DDSpan span)voidaddSpan(DDSpan span)voidregisterContinuation(ContinuableScope.Continuation continuation)When using continuations, it's possible one may be used after all existing spans are otherwisecompleted, so we need to wait till continuations are de-referenced before reporting. voidcancelContinuation(ContinuableScope.Continuation continuation)synchronized booleanclean()voidaddFirst(DDSpan span)intsize()-
Methods inherited from class java.util.LinkedList
add, add, addAll, addFirst, addLast, clear, clone, contains, descendingIterator, element, get, getFirst, getLast, indexOf, lastIndexOf, listIterator, offer, offerFirst, offerLast, peek, peekFirst, peekLast, poll, pollFirst, pollLast, pop, push, remove, remove, removeFirst, removeFirstOccurrence, removeLast, removeLastOccurrence, set, size, spliterator, toArray, toArray -
Methods inherited from class java.util.AbstractSequentialList
iterator -
Methods inherited from class java.util.AbstractList
equals, hashCode, subList -
Methods inherited from class java.util.AbstractCollection
containsAll, isEmpty, removeAll, retainAll, toString -
Methods inherited from class java.util.Collection
parallelStream, removeIf, stream -
Methods inherited from class java.lang.Iterable
forEach, iterator, spliterator -
Methods inherited from class java.util.List
copyOf, of, replaceAll, sort -
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
Method Detail
-
getCurrentTimeNano
long getCurrentTimeNano()
Current timestamp in nanoseconds.
Note: it is not possible to get 'real' nanosecond time. This method uses trace start time(which has millisecond precision) as a reference and it gets time with nanosecond precisionafter that. This means time measured within same Trace in different Spans is relatively correctwith nanosecond precision.
-
registerSpan
void registerSpan(DDSpan span)
-
registerContinuation
void registerContinuation(ContinuableScope.Continuation continuation)
When using continuations, it's possible one may be used after all existing spans are otherwisecompleted, so we need to wait till continuations are de-referenced before reporting.
-
cancelContinuation
void cancelContinuation(ContinuableScope.Continuation continuation)
-
clean
synchronized boolean clean()
-
size
int size()
-
-
-
-