TokenWatcher
public abstract class TokenWatcher
extends Object
java.lang.Object | |
↳ | android.os.TokenWatcher |
A TokenWatcher watches a collection of IBinder
s. 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 call acquired() and released() 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 the dump() 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.