AsyncHandler.smali
.class public Lcom/cleanmaster/filecloud/utils/AsyncHandler;
.super Ljava/lang/Object;
.source "AsyncHandler.java"
# static fields
.field private static final KEEP_ALIVE_TIME:J = 0x1eL
.field private static final MAX_TASK_SIZE:I = 0x80
.field private static final THREAD_POOL_SIZE:I = 0x3
.field private static final mPoolExecutor:Ljava/util/concurrent/ExecutorService;
# direct methods
.method static constructor <clinit>()V
.registers 8
.prologue
const/4 v2, 0x3
.line 25
new-instance v1, Ljava/util/concurrent/ThreadPoolExecutor;
const-wide/16 v4, 0x1e
sget-object v6, Ljava/util/concurrent/TimeUnit;->SECONDS:Ljava/util/concurrent/TimeUnit;
new-instance v7, Ljava/util/concurrent/LinkedBlockingQueue;
const/16 v0, 0x80
invoke-direct {v7, v0}, Ljava/util/concurrent/LinkedBlockingQueue;-><init>(I)V
move v3, v2
invoke-direct/range {v1 .. v7}, Ljava/util/concurrent/ThreadPoolExecutor;-><init>(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;)V
.line 29
const/4 v0, 0x1
invoke-virtual {v1, v0}, Ljava/util/concurrent/ThreadPoolExecutor;->allowCoreThreadTimeOut(Z)V
.line 30
sput-object v1, Lcom/cleanmaster/filecloud/utils/AsyncHandler;->mPoolExecutor:Ljava/util/concurrent/ExecutorService;
.line 31
return-void
.end method
.method public constructor <init>()V
.registers 1
.prologue
.line 14
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static declared-synchronized execute(Ljava/lang/Runnable;)V
.registers 3
.prologue
.line 34
const-class v1, Lcom/cleanmaster/filecloud/utils/AsyncHandler;
monitor-enter v1
if-nez p0, :cond_7
.line 40
:goto_5
monitor-exit v1
return-void
.line 38
:cond_7
:try_start_7
sget-object v0, Lcom/cleanmaster/filecloud/utils/AsyncHandler;->mPoolExecutor:Ljava/util/concurrent/ExecutorService;
invoke-interface {v0, p0}, Ljava/util/concurrent/ExecutorService;->execute(Ljava/lang/Runnable;)V
:try_end_c
.catch Ljava/lang/Exception; {:try_start_7 .. :try_end_c} :catch_d
.catchall {:try_start_7 .. :try_end_c} :catchall_f
goto :goto_5
.line 39
:catch_d
move-exception v0
goto :goto_5
.line 34
:catchall_f
move-exception v0
monitor-exit v1
throw v0
.end method