TokenWatcher
  public
  
  
  abstract
  class
  TokenWatcher
  
    extends Object
  
  
  
  
  
  
| java.lang.Object | |
| ↳ | android.os.TokenWatcher | 
A TokenWatcher watches a collection of IBinders. IBinders are added
 to the collection by calling acquire(IBinder, String), and removed by calling release(IBinder). IBinders are also implicitly removed when they become weakly
 reachable. Each IBinder may be added at most once.
 The acquired() method is invoked by posting to the specified handler
 whenever the size of the watched collection becomes nonzero.  The released() method is invoked on the specified handler whenever the size of
 the watched collection becomes zero.
Summary
| Public constructors | |
|---|---|
| 
      TokenWatcher(Handler h, String tag)
      Construct the TokenWatcher | |
| Public methods | |
|---|---|
| 
        
        
        
        
        
        void | 
      acquire(IBinder token, String tag)
      Record that this token has been acquired. | 
| 
        abstract
        
        
        
        
        void | 
      acquired()
      Called when the number of active tokens goes from 0 to 1. | 
| 
        
        
        
        
        
        void | 
      cleanup(IBinder token, boolean unlink)
       | 
| 
        
        
        
        
        
        void | 
      dump(PrintWriter pw)
       | 
| 
        
        
        
        
        
        void | 
      dump()
       | 
| 
        
        
        
        
        
        boolean | 
      isAcquired()
       | 
| 
        
        
        
        
        
        void | 
      release(IBinder token)
       | 
| 
        abstract
        
        
        
        
        void | 
      released()
      Called when the number of active tokens goes from 1 to 0. | 
| Inherited methods | |
|---|---|
Public constructors
TokenWatcher
public TokenWatcher (Handler h, String tag)
Construct the TokenWatcher
| Parameters | |
|---|---|
| h | Handler: A handler to callacquired()andreleased()on.  If you don't care, just call it like this, although your thread
 will have to be a Looper thread.new TokenWatcher(new Handler()) | 
| tag | String: A debugging tag for this TokenWatcher | 
Public methods
acquire
public void acquire (IBinder token, String tag)
Record that this token has been acquired.  When acquire is called, and
 the current count is 0, the acquired method is called on the given
 handler.
 Note that the same token can only be acquired once. If this
 token has already been acquired, no action is taken. The first
 subsequent call to release(IBinder) will release this token
 immediately.
| Parameters | |
|---|---|
| token | IBinder: An IBinder object. | 
| tag | String: A string used by thedump()method for debugging,
              to see who has references. | 
acquired
public abstract void acquired ()
Called when the number of active tokens goes from 0 to 1.
cleanup
public void cleanup (IBinder token, boolean unlink)
| Parameters | |
|---|---|
| token | IBinder | 
| unlink | boolean | 
released
public abstract void released ()
Called when the number of active tokens goes from 1 to 0.
