app/src/main/java/me/zhanghai/android/douya/util/DiskCacheHelper.java
(开头部分) 5KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
/*
* Copyright (c) 2015 Zhang Hai <Dreaming.in.Code.ZH@Gmail.com>
* All Rights Reserved.
*/
package me.zhanghai.android.douya.util;
import android.content.Context;
import android.os.Handler;
import com.google.gson.reflect.TypeToken;
import java.io.File;
import java.lang.reflect.Type;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.RejectedExecutionException;
import me.zhanghai.android.douya.BuildConfig;
public class DiskCacheHelper {
// 2M
private static final int MAX_DISK_CACHE_BYTES = 2 * 1024 * 1024;
private static final Object DISK_CACHE_LOCK = new Object();
private static volatile DiskCache sDiskCache;
private static final ExecutorService sExecutorService = Executors.newSingleThreadExecutor();
private DiskCacheHelper() {}
public static DiskCache get(Context context) {
if (sDiskCache == null) {
synchronized (DISK_CACHE_LOCK) {
if (sDiskCache == null) {
sDiskCache = DiskCache.open(new File(context.getCacheDir(),
BuildConfig.APPLICATION_ID), 0, MAX_DISK_CACHE_BYTES);
}
}
}
return sDiskCache;
}
private static void executeAsync(Runnable runnable) {
try {
sExecutorService.execute(runnable);
} catch (RejectedExecutionException e) {
e.printStackTrace();
}
}
private static <T> void deliverValue(Handler handler, final Callback<T> callback,
final T value) {
handler.post(new Runnable() {
@Override
public void run() {
callback.onValue(value);
}
});
后面还有 121 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
