diff options
| author | 2012-08-25 12:29:46 -0700 | |
|---|---|---|
| committer | 2012-08-25 13:40:26 -0700 | |
| commit | a2910d0abbbe18ba1710dfd4a31af45769632255 (patch) | |
| tree | bac98df3737fe3df7e9cd168973fcfe62fad05b0 /services/java | |
| parent | ba94170a7a4f78d68fe228e9ee35ed82c4de09c8 (diff) | |
Make it easier to create asynchronous Handlers.
There are potentially very many Handlers owned by services
that should not be blocked by barriers introduced by UI traversals
occurring on the same thread (if that ever happens).
Add some convenience constructors to make it easy to switch
these Handlers over to being async.
Bug: 7057752
Change-Id: I64d9bffe81e7c52ada4cfad4e89d4340153f4688
Diffstat (limited to 'services/java')
5 files changed, 8 insertions, 4 deletions
diff --git a/services/java/com/android/server/DockObserver.java b/services/java/com/android/server/DockObserver.java index 2bed95732a29..f1ff27ff351b 100644 --- a/services/java/com/android/server/DockObserver.java +++ b/services/java/com/android/server/DockObserver.java @@ -241,7 +241,7 @@ final class DockObserver extends UEventObserver { SCREENSAVER_ACTIVATE_ON_DOCK, DEFAULT_SCREENSAVER_ACTIVATED_ON_DOCK) != 0; } - private final Handler mHandler = new Handler(Looper.myLooper(), null, true) { + private final Handler mHandler = new Handler(true /*async*/) { @Override public void handleMessage(Message msg) { switch (msg.what) { diff --git a/services/java/com/android/server/input/InputManagerService.java b/services/java/com/android/server/input/InputManagerService.java index 0b8ff620c4cc..29c68ebf0424 100644 --- a/services/java/com/android/server/input/InputManagerService.java +++ b/services/java/com/android/server/input/InputManagerService.java @@ -1438,6 +1438,10 @@ public class InputManagerService extends IInputManager.Stub implements Watchdog. * Private handler for the input manager. */ private final class InputManagerHandler extends Handler { + public InputManagerHandler() { + super(true /*async*/); + } + @Override public void handleMessage(Message msg) { switch (msg.what) { diff --git a/services/java/com/android/server/power/DisplayPowerController.java b/services/java/com/android/server/power/DisplayPowerController.java index 5f917af174ef..cd211da09973 100644 --- a/services/java/com/android/server/power/DisplayPowerController.java +++ b/services/java/com/android/server/power/DisplayPowerController.java @@ -1112,7 +1112,7 @@ final class DisplayPowerController { private final class DisplayControllerHandler extends Handler { public DisplayControllerHandler(Looper looper) { - super(looper); + super(looper, null, true /*async*/); } @Override diff --git a/services/java/com/android/server/power/Notifier.java b/services/java/com/android/server/power/Notifier.java index 9d928e503420..75f84457a143 100644 --- a/services/java/com/android/server/power/Notifier.java +++ b/services/java/com/android/server/power/Notifier.java @@ -422,7 +422,7 @@ final class Notifier { private final class NotifierHandler extends Handler { public NotifierHandler(Looper looper) { - super(looper); + super(looper, null, true /*async*/); } @Override diff --git a/services/java/com/android/server/power/PowerManagerService.java b/services/java/com/android/server/power/PowerManagerService.java index 9f2b247d3106..cbb5b6df1677 100644 --- a/services/java/com/android/server/power/PowerManagerService.java +++ b/services/java/com/android/server/power/PowerManagerService.java @@ -1952,7 +1952,7 @@ public final class PowerManagerService extends IPowerManager.Stub */ private final class PowerManagerHandler extends Handler { public PowerManagerHandler(Looper looper) { - super(looper); + super(looper, null, true /*async*/); } @Override |