ThreadUtils$LinkedBlockingQueue4Util.smali
.class final Lcom/blankj/utilcode/util/ThreadUtils$LinkedBlockingQueue4Util;
.super Ljava/util/concurrent/LinkedBlockingQueue;
.source "ThreadUtils.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/blankj/utilcode/util/ThreadUtils;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1a
name = "LinkedBlockingQueue4Util"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/LinkedBlockingQueue<",
"Ljava/lang/Runnable;",
">;"
}
.end annotation
# instance fields
.field private mCapacity:I
.field private volatile mPool:Lcom/blankj/utilcode/util/ThreadUtils$ThreadPoolExecutor4Util;
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method constructor <init>()V
.registers 2
.line 1067
invoke-direct {p0}, Ljava/util/concurrent/LinkedBlockingQueue;-><init>()V
.line 1064
const v0, 0x7fffffff
iput v0, p0, Lcom/blankj/utilcode/util/ThreadUtils$LinkedBlockingQueue4Util;->mCapacity:I
.line 1068
return-void
.end method
.method constructor <init>(I)V
.registers 3
.param p1, "capacity" # I
.line 1078
invoke-direct {p0}, Ljava/util/concurrent/LinkedBlockingQueue;-><init>()V
.line 1064
const v0, 0x7fffffff
iput v0, p0, Lcom/blankj/utilcode/util/ThreadUtils$LinkedBlockingQueue4Util;->mCapacity:I
.line 1079
iput p1, p0, Lcom/blankj/utilcode/util/ThreadUtils$LinkedBlockingQueue4Util;->mCapacity:I
.line 1080
return-void
.end method
.method constructor <init>(Z)V
.registers 3
.param p1, "isAddSubThreadFirstThenAddQueue" # Z
.line 1071
invoke-direct {p0}, Ljava/util/concurrent/LinkedBlockingQueue;-><init>()V
.line 1064
const v0, 0x7fffffff
iput v0, p0, Lcom/blankj/utilcode/util/ThreadUtils$LinkedBlockingQueue4Util;->mCapacity:I
.line 1072
if-eqz p1, :cond_d
.line 1073
const/4 v0, 0x0
iput v0, p0, Lcom/blankj/utilcode/util/ThreadUtils$LinkedBlockingQueue4Util;->mCapacity:I
.line 1075
:cond_d
return-void
.end method
.method static synthetic access$602(Lcom/blankj/utilcode/util/ThreadUtils$LinkedBlockingQueue4Util;Lcom/blankj/utilcode/util/ThreadUtils$ThreadPoolExecutor4Util;)Lcom/blankj/utilcode/util/ThreadUtils$ThreadPoolExecutor4Util;
.registers 2
.param p0, "x0" # Lcom/blankj/utilcode/util/ThreadUtils$LinkedBlockingQueue4Util;
.param p1, "x1" # Lcom/blankj/utilcode/util/ThreadUtils$ThreadPoolExecutor4Util;
.line 1060
iput-object p1, p0, Lcom/blankj/utilcode/util/ThreadUtils$LinkedBlockingQueue4Util;->mPool:Lcom/blankj/utilcode/util/ThreadUtils$ThreadPoolExecutor4Util;
return-object p1
.end method
# virtual methods
.method public bridge synthetic offer(Ljava/lang/Object;)Z
.registers 2
.line 1060
check-cast p1, Ljava/lang/Runnable;
invoke-virtual {p0, p1}, Lcom/blankj/utilcode/util/ThreadUtils$LinkedBlockingQueue4Util;->offer(Ljava/lang/Runnable;)Z
move-result p1
return p1
.end method
.method public offer(Ljava/lang/Runnable;)Z
.registers 4
.param p1, "runnable" # Ljava/lang/Runnable;
.line 1083
if-eqz p1, :cond_23
.line 1084
iget v0, p0, Lcom/blankj/utilcode/util/ThreadUtils$LinkedBlockingQueue4Util;->mCapacity:I
invoke-virtual {p0}, Lcom/blankj/utilcode/util/ThreadUtils$LinkedBlockingQueue4Util;->size()I
move-result v1
if-gt v0, v1, :cond_1e
iget-object v0, p0, Lcom/blankj/utilcode/util/ThreadUtils$LinkedBlockingQueue4Util;->mPool:Lcom/blankj/utilcode/util/ThreadUtils$ThreadPoolExecutor4Util;
if-eqz v0, :cond_1e
iget-object v0, p0, Lcom/blankj/utilcode/util/ThreadUtils$LinkedBlockingQueue4Util;->mPool:Lcom/blankj/utilcode/util/ThreadUtils$ThreadPoolExecutor4Util;
.line 1085
invoke-virtual {v0}, Lcom/blankj/utilcode/util/ThreadUtils$ThreadPoolExecutor4Util;->getPoolSize()I
move-result v0
iget-object v1, p0, Lcom/blankj/utilcode/util/ThreadUtils$LinkedBlockingQueue4Util;->mPool:Lcom/blankj/utilcode/util/ThreadUtils$ThreadPoolExecutor4Util;
invoke-virtual {v1}, Lcom/blankj/utilcode/util/ThreadUtils$ThreadPoolExecutor4Util;->getMaximumPoolSize()I
move-result v1
if-ge v0, v1, :cond_1e
.line 1087
const/4 v0, 0x0
return v0
.line 1089
:cond_1e
invoke-super {p0, p1}, Ljava/util/concurrent/LinkedBlockingQueue;->offer(Ljava/lang/Object;)Z
move-result v0
return v0
.line 1083
:cond_23
new-instance v0, Ljava/lang/NullPointerException;
const-string v1, "Argument \'runnable\' of type Runnable (#0 out of 1, zero-based) is marked by @android.support.annotation.NonNull but got null for it"
invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
throw v0
.end method