Exemple #1
0
 /// <summary>To be called when the critical span is complete (i.e.</summary>
 /// <remarks>
 /// To be called when the critical span is complete (i.e. the
 /// animation is done animating).  This can be called on any
 /// thread (even a different one from where the animation was
 /// taking place), but that's only a defensive implementation
 /// measure.  It really makes no sense for you to call this on
 /// thread other than that where you created it.
 /// </remarks>
 /// <hide></hide>
 public virtual void finish()
 {
     android.os.StrictMode.ThreadSpanState state = mContainerState;
     lock (state)
     {
         if (mName == null)
         {
             return;
         }
         if (mPrev != null)
         {
             mPrev.mNext = mNext;
         }
         if (mNext != null)
         {
             mNext.mPrev = mPrev;
         }
         if (state.mActiveHead == this)
         {
             state.mActiveHead = mNext;
         }
         state.mActiveSize--;
         if (LOG_V)
         {
             android.util.Log.d(TAG, "Span finished=" + mName + "; size=" + state.mActiveSize);
         }
         this.mCreateMillis = -1;
         this.mName         = null;
         this.mPrev         = null;
         this.mNext         = null;
         if (state.mFreeListSize < 5)
         {
             this.mNext          = state.mFreeListHead;
             state.mFreeListHead = this;
             state.mFreeListSize++;
         }
     }
 }
Exemple #2
0
 protected internal Span()
 {
     mContainerState = null;
 }
Exemple #3
0
 private Span(android.os.StrictMode.ThreadSpanState threadState)
 {
     mContainerState = threadState;
 }