diff options
| author | John Reck <jreck@google.com> | 2011-07-25 11:36:17 -0700 |
|---|---|---|
| committer | John Reck <jreck@google.com> | 2011-07-25 13:59:38 -0700 |
| commit | cadae72b6309303bc7b22e85181222b73e176c32 (patch) | |
| tree | a33394121bd6c3553f9dc4a6d3dca04a914f4604 /src/com/android/browser/BackgroundHandler.java | |
| parent | 420d149566e19f1663db69420375b6dd1f0acd6f (diff) | |
| download | packages_apps_Browser-cadae72b6309303bc7b22e85181222b73e176c32.tar.gz packages_apps_Browser-cadae72b6309303bc7b22e85181222b73e176c32.tar.bz2 packages_apps_Browser-cadae72b6309303bc7b22e85181222b73e176c32.zip | |
Switch to a background thread pool
Bug: 5019676
Use a shared thread pool
Eliminate some unnecessary use of AsyncTask (which has extra
overhead compared to using a thread pool)
Change-Id: I01d6c84816a9c9705216c8fdb8ed8c990265626a
Diffstat (limited to 'src/com/android/browser/BackgroundHandler.java')
| -rw-r--r-- | src/com/android/browser/BackgroundHandler.java | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/src/com/android/browser/BackgroundHandler.java b/src/com/android/browser/BackgroundHandler.java new file mode 100644 index 000000000..a0d9243e3 --- /dev/null +++ b/src/com/android/browser/BackgroundHandler.java @@ -0,0 +1,44 @@ +/* + * Copyright (C) 2011 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.android.browser; + +import android.os.HandlerThread; +import android.os.Looper; + +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; + +public class BackgroundHandler { + + static HandlerThread sLooperThread; + static ExecutorService mThreadPool; + + static { + sLooperThread = new HandlerThread("BackgroundHandler", HandlerThread.MIN_PRIORITY); + sLooperThread.start(); + mThreadPool = Executors.newCachedThreadPool(); + } + + public static void execute(Runnable runnable) { + mThreadPool.execute(runnable); + } + + public static Looper getLooper() { + return sLooperThread.getLooper(); + } + + private BackgroundHandler() {} +} |
