AsyncConsumer$1.smali
.class Lcom/cleanmaster/junk/util/AsyncConsumer$1;
.super Ljava/lang/Thread;
.source "AsyncConsumer.java"
# instance fields
.field final synthetic this$0:Lcom/cleanmaster/junk/util/AsyncConsumer;
# direct methods
.method constructor <init>(Lcom/cleanmaster/junk/util/AsyncConsumer;)V
.registers 2
.prologue
.line 99
iput-object p1, p0, Lcom/cleanmaster/junk/util/AsyncConsumer$1;->this$0:Lcom/cleanmaster/junk/util/AsyncConsumer;
invoke-direct {p0}, Ljava/lang/Thread;-><init>()V
return-void
.end method
# virtual methods
.method public run()V
.registers 5
.prologue
.line 103
.line 106
:cond_0
:goto_0
iget-object v0, p0, Lcom/cleanmaster/junk/util/AsyncConsumer$1;->this$0:Lcom/cleanmaster/junk/util/AsyncConsumer;
iget-object v1, v0, Lcom/cleanmaster/junk/util/AsyncConsumer;->mProductQueue:Ljava/util/Queue;
monitor-enter v1
.line 107
:try_start_5
iget-object v0, p0, Lcom/cleanmaster/junk/util/AsyncConsumer$1;->this$0:Lcom/cleanmaster/junk/util/AsyncConsumer;
iget-object v0, v0, Lcom/cleanmaster/junk/util/AsyncConsumer;->mProductQueue:Ljava/util/Queue;
invoke-interface {v0}, Ljava/util/Queue;->isEmpty()Z
:try_end_c
.catchall {:try_start_5 .. :try_end_c} :catchall_34
move-result v0
if-eqz v0, :cond_37
.line 109
:try_start_f
iget-object v0, p0, Lcom/cleanmaster/junk/util/AsyncConsumer$1;->this$0:Lcom/cleanmaster/junk/util/AsyncConsumer;
iget-object v0, v0, Lcom/cleanmaster/junk/util/AsyncConsumer;->mProductQueue:Ljava/util/Queue;
iget-object v2, p0, Lcom/cleanmaster/junk/util/AsyncConsumer$1;->this$0:Lcom/cleanmaster/junk/util/AsyncConsumer;
iget v2, v2, Lcom/cleanmaster/junk/util/AsyncConsumer;->mWaitTime:I
int-to-long v2, v2
invoke-virtual {v0, v2, v3}, Ljava/lang/Object;->wait(J)V
.line 110
iget-object v0, p0, Lcom/cleanmaster/junk/util/AsyncConsumer$1;->this$0:Lcom/cleanmaster/junk/util/AsyncConsumer;
iget-object v0, v0, Lcom/cleanmaster/junk/util/AsyncConsumer;->mProductQueue:Ljava/util/Queue;
invoke-interface {v0}, Ljava/util/Queue;->isEmpty()Z
move-result v0
if-eqz v0, :cond_37
.line 111
iget-object v0, p0, Lcom/cleanmaster/junk/util/AsyncConsumer$1;->this$0:Lcom/cleanmaster/junk/util/AsyncConsumer;
const/4 v2, 0x0
iput-object v2, v0, Lcom/cleanmaster/junk/util/AsyncConsumer;->mConsumerThread:Ljava/lang/Thread;
:try_end_2a
.catch Ljava/lang/InterruptedException; {:try_start_f .. :try_end_2a} :catch_2c
.catchall {:try_start_f .. :try_end_2a} :catchall_34
.line 112
:try_start_2a
monitor-exit v1
.line 127
:goto_2b
return-void
.line 114
:catch_2c
move-exception v0
.line 115
iget-object v0, p0, Lcom/cleanmaster/junk/util/AsyncConsumer$1;->this$0:Lcom/cleanmaster/junk/util/AsyncConsumer;
const/4 v2, 0x0
iput-object v2, v0, Lcom/cleanmaster/junk/util/AsyncConsumer;->mConsumerThread:Ljava/lang/Thread;
.line 116
monitor-exit v1
goto :goto_2b
.line 121
:catchall_34
move-exception v0
monitor-exit v1
:try_end_36
.catchall {:try_start_2a .. :try_end_36} :catchall_34
throw v0
.line 120
:cond_37
:try_start_37
iget-object v0, p0, Lcom/cleanmaster/junk/util/AsyncConsumer$1;->this$0:Lcom/cleanmaster/junk/util/AsyncConsumer;
iget-object v0, v0, Lcom/cleanmaster/junk/util/AsyncConsumer;->mProductQueue:Ljava/util/Queue;
invoke-interface {v0}, Ljava/util/Queue;->poll()Ljava/lang/Object;
move-result-object v0
.line 121
monitor-exit v1
:try_end_40
.catchall {:try_start_37 .. :try_end_40} :catchall_34
.line 123
iget-object v1, p0, Lcom/cleanmaster/junk/util/AsyncConsumer$1;->this$0:Lcom/cleanmaster/junk/util/AsyncConsumer;
iget-object v1, v1, Lcom/cleanmaster/junk/util/AsyncConsumer;->mCallback:Lcom/cleanmaster/junk/util/AsyncConsumer$ConsumerCallback;
if-eqz v1, :cond_0
.line 124
iget-object v1, p0, Lcom/cleanmaster/junk/util/AsyncConsumer$1;->this$0:Lcom/cleanmaster/junk/util/AsyncConsumer;
iget-object v1, v1, Lcom/cleanmaster/junk/util/AsyncConsumer;->mCallback:Lcom/cleanmaster/junk/util/AsyncConsumer$ConsumerCallback;
invoke-interface {v1, v0}, Lcom/cleanmaster/junk/util/AsyncConsumer$ConsumerCallback;->consumeProduct(Ljava/lang/Object;)V
goto :goto_0
.end method