TPTaskManager.smali
.class public Lcom/tradplus/ads/base/common/TPTaskManager;
.super Ljava/lang/Object;
# static fields
.field public static final TYPE_NORMAL:I = 0x2
.field public static final TYPE_SINGLE:I = 0x1
.field private static a:Lcom/tradplus/ads/base/common/TPTaskManager;
# instance fields
.field private b:Ljava/util/concurrent/ExecutorService;
.field private c:Ljava/util/concurrent/ExecutorService;
.field private d:Landroid/os/HandlerThread;
.field private e:Landroid/os/Handler;
.field private f:Landroid/os/Handler;
# direct methods
.method static constructor <clinit>()V
.registers 0
return-void
.end method
.method protected constructor <init>()V
.registers 5
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
invoke-static {}, Ljava/util/concurrent/Executors;->newCachedThreadPool()Ljava/util/concurrent/ExecutorService;
move-result-object v0
iput-object v0, p0, Lcom/tradplus/ads/base/common/TPTaskManager;->b:Ljava/util/concurrent/ExecutorService;
invoke-static {}, Ljava/util/concurrent/Executors;->newSingleThreadExecutor()Ljava/util/concurrent/ExecutorService;
move-result-object v0
iput-object v0, p0, Lcom/tradplus/ads/base/common/TPTaskManager;->c:Ljava/util/concurrent/ExecutorService;
new-instance v0, Landroid/os/HandlerThread;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "tp-thread-"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v2
invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Landroid/os/HandlerThread;-><init>(Ljava/lang/String;)V
iput-object v0, p0, Lcom/tradplus/ads/base/common/TPTaskManager;->d:Landroid/os/HandlerThread;
iget-object v0, p0, Lcom/tradplus/ads/base/common/TPTaskManager;->d:Landroid/os/HandlerThread;
invoke-virtual {v0}, Landroid/os/HandlerThread;->start()V
new-instance v0, Landroid/os/Handler;
iget-object v1, p0, Lcom/tradplus/ads/base/common/TPTaskManager;->d:Landroid/os/HandlerThread;
invoke-virtual {v1}, Landroid/os/HandlerThread;->getLooper()Landroid/os/Looper;
move-result-object v1
invoke-direct {v0, v1}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V
iput-object v0, p0, Lcom/tradplus/ads/base/common/TPTaskManager;->e:Landroid/os/Handler;
new-instance v0, Landroid/os/Handler;
invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
move-result-object v1
invoke-direct {v0, v1}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V
iput-object v0, p0, Lcom/tradplus/ads/base/common/TPTaskManager;->f:Landroid/os/Handler;
return-void
.end method
.method public static declared-synchronized getInstance()Lcom/tradplus/ads/base/common/TPTaskManager;
.registers 2
const-class v0, Lcom/tradplus/ads/base/common/TPTaskManager;
monitor-enter v0
:try_start_3
sget-object v1, Lcom/tradplus/ads/base/common/TPTaskManager;->a:Lcom/tradplus/ads/base/common/TPTaskManager;
if-nez v1, :cond_e
new-instance v1, Lcom/tradplus/ads/base/common/TPTaskManager;
invoke-direct {v1}, Lcom/tradplus/ads/base/common/TPTaskManager;-><init>()V
sput-object v1, Lcom/tradplus/ads/base/common/TPTaskManager;->a:Lcom/tradplus/ads/base/common/TPTaskManager;
:cond_e
sget-object v1, Lcom/tradplus/ads/base/common/TPTaskManager;->a:Lcom/tradplus/ads/base/common/TPTaskManager;
:try_end_10
.catchall {:try_start_3 .. :try_end_10} :catchall_12
monitor-exit v0
return-object v1
:catchall_12
move-exception v1
monitor-exit v0
throw v1
.end method
# virtual methods
.method public getThreadHandler()Landroid/os/Handler;
.registers 2
iget-object v0, p0, Lcom/tradplus/ads/base/common/TPTaskManager;->e:Landroid/os/Handler;
return-object v0
.end method
.method public runNormalTask(Ljava/lang/Runnable;)V
.registers 3
const/4 v0, 0x2
invoke-virtual {p0, p1, v0}, Lcom/tradplus/ads/base/common/TPTaskManager;->runTask(Ljava/lang/Runnable;I)V
return-void
.end method
.method public runOnMainThread(Ljava/lang/Runnable;)V
.registers 3
iget-object v0, p0, Lcom/tradplus/ads/base/common/TPTaskManager;->f:Landroid/os/Handler;
invoke-virtual {v0, p1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
return-void
.end method
.method public runOnMainThreadDelayed(Ljava/lang/Runnable;J)V
.registers 5
iget-object v0, p0, Lcom/tradplus/ads/base/common/TPTaskManager;->f:Landroid/os/Handler;
invoke-virtual {v0, p1, p2, p3}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z
return-void
.end method
.method public runOnThread(Ljava/lang/Runnable;)V
.registers 3
iget-object v0, p0, Lcom/tradplus/ads/base/common/TPTaskManager;->e:Landroid/os/Handler;
invoke-virtual {v0, p1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
return-void
.end method
.method public runOnThreadDelayed(Ljava/lang/Runnable;J)V
.registers 5
iget-object v0, p0, Lcom/tradplus/ads/base/common/TPTaskManager;->e:Landroid/os/Handler;
invoke-virtual {v0, p1, p2, p3}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z
return-void
.end method
.method public runTask(Ljava/lang/Runnable;I)V
.registers 4
const/4 v0, 0x1
if-eq p2, v0, :cond_a
const/4 v0, 0x2
if-eq p2, v0, :cond_7
goto :goto_f
:cond_7
iget-object p2, p0, Lcom/tradplus/ads/base/common/TPTaskManager;->b:Ljava/util/concurrent/ExecutorService;
goto :goto_c
:cond_a
iget-object p2, p0, Lcom/tradplus/ads/base/common/TPTaskManager;->c:Ljava/util/concurrent/ExecutorService;
:goto_c
invoke-interface {p2, p1}, Ljava/util/concurrent/ExecutorService;->execute(Ljava/lang/Runnable;)V
:goto_f
return-void
.end method
.method public runTaskDelayed(Ljava/lang/Runnable;J)V
.registers 5
new-instance v0, Lcom/tradplus/ads/base/common/TPTaskManager$1;
invoke-direct {v0, p0, p1}, Lcom/tradplus/ads/base/common/TPTaskManager$1;-><init>(Lcom/tradplus/ads/base/common/TPTaskManager;Ljava/lang/Runnable;)V
invoke-virtual {p0, v0, p2, p3}, Lcom/tradplus/ads/base/common/TPTaskManager;->runOnThreadDelayed(Ljava/lang/Runnable;J)V
return-void
.end method