减小线程并发数量防止内存溢出
parent
2c3d04758a
commit
04b7129675
@ -0,0 +1,30 @@
|
||||
package com.xypower.mppreview;
|
||||
|
||||
import android.os.AsyncTask;
|
||||
import java.util.concurrent.Executor;
|
||||
import java.util.concurrent.LinkedBlockingQueue;
|
||||
import java.util.concurrent.ThreadPoolExecutor;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
public class AsyncTaskWithCustomThreadPool extends AsyncTask<Void, Void, Void> {
|
||||
|
||||
private static final int CORE_POOL_SIZE = 2; // 自定义线程数
|
||||
private static final int MAXIMUM_POOL_SIZE = 2; // 自定义线程数
|
||||
private static final int KEEP_ALIVE = 3; // 自定义线程存活时间
|
||||
|
||||
public static final Executor THREAD_POOL_EXECUTOR
|
||||
= new ThreadPoolExecutor(CORE_POOL_SIZE, MAXIMUM_POOL_SIZE, KEEP_ALIVE,
|
||||
TimeUnit.SECONDS, new LinkedBlockingQueue<Runnable>());
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
protected Void doInBackground(Void... params) {
|
||||
// 你的后台操作
|
||||
return null;
|
||||
}
|
||||
|
||||
public void executeTask() {
|
||||
executeOnExecutor(THREAD_POOL_EXECUTOR);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue