a.smali
.class public final Lsg/bigo/apm/plugins/memoryinfo/c/a;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field static final synthetic a:[Lkotlin/k/g;
.field public static final b:Lsg/bigo/apm/plugins/memoryinfo/c/a;
.field private static c:J
.field private static final d:Lkotlin/f;
# direct methods
.method static constructor <clinit>()V
.registers 5
const/4 v0, 0x1
new-array v0, v0, [Lkotlin/k/g;
new-instance v1, Lkotlin/f/b/z;
const-class v2, Lsg/bigo/apm/plugins/memoryinfo/c/a;
invoke-static {v2}, Lkotlin/f/b/ab;->a(Ljava/lang/Class;)Lkotlin/k/b;
move-result-object v2
const-string v3, "javaMaxMemory"
const-string v4, "getJavaMaxMemory()J"
invoke-direct {v1, v2, v3, v4}, Lkotlin/f/b/z;-><init>(Lkotlin/k/c;Ljava/lang/String;Ljava/lang/String;)V
invoke-static {v1}, Lkotlin/f/b/ab;->a(Lkotlin/f/b/y;)Lkotlin/k/j;
move-result-object v1
check-cast v1, Lkotlin/k/g;
const/4 v2, 0x0
aput-object v1, v0, v2
sput-object v0, Lsg/bigo/apm/plugins/memoryinfo/c/a;->a:[Lkotlin/k/g;
.line 26
new-instance v0, Lsg/bigo/apm/plugins/memoryinfo/c/a;
invoke-direct {v0}, Lsg/bigo/apm/plugins/memoryinfo/c/a;-><init>()V
sput-object v0, Lsg/bigo/apm/plugins/memoryinfo/c/a;->b:Lsg/bigo/apm/plugins/memoryinfo/c/a;
.line 30
sget-object v0, Lsg/bigo/apm/plugins/memoryinfo/c/a$d;->a:Lsg/bigo/apm/plugins/memoryinfo/c/a$d;
check-cast v0, Lkotlin/f/a/a;
invoke-static {v0}, Lkotlin/g;->a(Lkotlin/f/a/a;)Lkotlin/f;
move-result-object v0
sput-object v0, Lsg/bigo/apm/plugins/memoryinfo/c/a;->d:Lkotlin/f;
return-void
.end method
.method private constructor <init>()V
.registers 1
.line 26
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private static a(Landroid/os/Debug$MemoryInfo;)I
.registers 9
const-string v0, "clz.getDeclaredMethod(\"g\u2026ible = true\n }"
const/4 v1, 0x0
.line 286
:try_start_3
sget v2, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v3, 0x17
if-lt v2, v3, :cond_20
const-string v0, "summary.graphics"
.line 287
invoke-virtual {p0, v0}, Landroid/os/Debug$MemoryInfo;->getMemoryStat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
const-string v0, "memoryInfo.getMemoryStat(\"summary.graphics\")"
invoke-static {p0, v0}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
invoke-static {p0}, Lkotlin/m/p;->c(Ljava/lang/String;)Ljava/lang/Integer;
move-result-object p0
if-eqz p0, :cond_8c
invoke-virtual {p0}, Ljava/lang/Integer;->intValue()I
move-result p0
:goto_1e
move v1, p0
goto :goto_8c
.line 289
:cond_20
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v2
const-string v3, "getOtherPrivateClean"
const/4 v4, 0x1
new-array v5, v4, [Ljava/lang/Class;
.line 290
sget-object v6, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
aput-object v6, v5, v1
invoke-virtual {v2, v3, v5}, Ljava/lang/Class;->getDeclaredMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object v3
.line 291
invoke-virtual {v3, v4}, Ljava/lang/reflect/Method;->setAccessible(Z)V
.line 290
invoke-static {v3, v0}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
const-string v5, "getOtherPrivateDirty"
new-array v6, v4, [Ljava/lang/Class;
.line 293
sget-object v7, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
aput-object v7, v6, v1
invoke-virtual {v2, v5, v6}, Ljava/lang/Class;->getDeclaredMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object v2
.line 294
invoke-virtual {v2, v4}, Ljava/lang/reflect/Method;->setAccessible(Z)V
.line 293
invoke-static {v2, v0}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
.line 296
new-instance v0, Lsg/bigo/apm/plugins/memoryinfo/c/a$b;
invoke-direct {v0, v3, v2, p0}, Lsg/bigo/apm/plugins/memoryinfo/c/a$b;-><init>(Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;Landroid/os/Debug$MemoryInfo;)V
check-cast v0, Lkotlin/f/a/b;
.line 302
sget p0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x16
const/16 v3, 0xe
const/4 v5, 0x2
if-lt p0, v2, :cond_70
const/4 p0, 0x3
new-array p0, p0, [I
const/4 v2, 0x4
aput v2, p0, v1
aput v3, p0, v4
const/16 v2, 0xf
aput v2, p0, v5
invoke-interface {v0, p0}, Lkotlin/f/a/b;->invoke(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Ljava/lang/Number;
invoke-virtual {p0}, Ljava/lang/Number;->intValue()I
move-result p0
goto :goto_1e
.line 303
:cond_70
sget p0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x13
if-lt p0, v2, :cond_8c
new-array p0, v5, [I
const/16 v2, 0xd
aput v2, p0, v1
aput v3, p0, v4
invoke-interface {v0, p0}, Lkotlin/f/a/b;->invoke(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Ljava/lang/Number;
invoke-virtual {p0}, Ljava/lang/Number;->intValue()I
move-result p0
:try_end_88
.catchall {:try_start_3 .. :try_end_88} :catchall_89
goto :goto_1e
.line 556
:catchall_89
invoke-static {}, Lsg/bigo/common/a;->e()Z
:cond_8c
:goto_8c
return v1
.end method
.method public static a()J
.registers 2
.line 28
sget-wide v0, Lsg/bigo/apm/plugins/memoryinfo/c/a;->c:J
return-wide v0
.end method
.method private static a(Ljava/lang/String;)Ljava/lang/String;
.registers 3
.line 97
:try_start_0
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x15
if-lt v0, v1, :cond_10
.line 98
invoke-static {p0}, Landroid/system/Os;->readlink(Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
const-string v0, "Os.readlink(fdPath)"
invoke-static {p0, v0}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
goto :goto_60
.line 100
:cond_10
invoke-static {}, Ljava/lang/Runtime;->getRuntime()Ljava/lang/Runtime;
move-result-object v0
const-string v1, "readlink "
invoke-static {p0}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p0
invoke-virtual {v1, p0}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
invoke-virtual {v0, p0}, Ljava/lang/Runtime;->exec(Ljava/lang/String;)Ljava/lang/Process;
move-result-object p0
.line 101
invoke-virtual {p0}, Ljava/lang/Process;->waitFor()I
const-string v0, "exec"
.line 102
invoke-static {p0, v0}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {p0}, Ljava/lang/Process;->getInputStream()Ljava/io/InputStream;
move-result-object p0
const-string v0, "exec.inputStream"
invoke-static {p0, v0}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
sget-object v0, Lkotlin/m/d;->a:Ljava/nio/charset/Charset;
new-instance v1, Ljava/io/InputStreamReader;
invoke-direct {v1, p0, v0}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;Ljava/nio/charset/Charset;)V
check-cast v1, Ljava/io/Reader;
new-instance p0, Ljava/io/BufferedReader;
const/16 v0, 0x2000
invoke-direct {p0, v1, v0}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;I)V
check-cast p0, Ljava/io/Closeable;
:try_end_45
.catchall {:try_start_0 .. :try_end_45} :catchall_5b
:try_start_45
move-object v0, p0
check-cast v0, Ljava/io/BufferedReader;
.line 103
check-cast v0, Ljava/io/Reader;
invoke-static {v0}, Lkotlin/io/j;->a(Ljava/io/Reader;)Ljava/lang/String;
move-result-object v0
:try_end_4e
.catchall {:try_start_45 .. :try_end_4e} :catchall_54
const/4 v1, 0x0
.line 102
:try_start_4f
invoke-static {p0, v1}, Lkotlin/io/b;->a(Ljava/io/Closeable;Ljava/lang/Throwable;)V
:try_end_52
.catchall {:try_start_4f .. :try_end_52} :catchall_5b
move-object p0, v0
goto :goto_60
:catchall_54
move-exception v0
:try_start_55
throw v0
:try_end_56
.catchall {:try_start_55 .. :try_end_56} :catchall_56
:catchall_56
move-exception v1
:try_start_57
invoke-static {p0, v0}, Lkotlin/io/b;->a(Ljava/io/Closeable;Ljava/lang/Throwable;)V
throw v1
:try_end_5b
.catchall {:try_start_57 .. :try_end_5b} :catchall_5b
.line 398
:catchall_5b
invoke-static {}, Lsg/bigo/common/a;->e()Z
const-string p0, ""
:goto_60
return-object p0
.end method
.method private static a(Ljava/util/List;)Ljava/lang/String;
.registers 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/List<",
"Ljava/lang/String;",
">;)",
"Ljava/lang/String;"
}
.end annotation
.line 110
new-instance v0, Ljava/util/LinkedHashMap;
invoke-direct {v0}, Ljava/util/LinkedHashMap;-><init>()V
check-cast v0, Ljava/util/Map;
.line 112
check-cast p0, Ljava/lang/Iterable;
.line 402
invoke-interface {p0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object p0
:cond_d
:goto_d
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_42
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/String;
.line 113
move-object v2, v1
check-cast v2, Ljava/lang/CharSequence;
invoke-interface {v2}, Ljava/lang/CharSequence;->length()I
move-result v2
const/4 v3, 0x1
const/4 v4, 0x0
if-nez v2, :cond_26
const/4 v2, 0x1
goto :goto_27
:cond_26
const/4 v2, 0x0
:goto_27
if-nez v2, :cond_d
.line 114
invoke-interface {v0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v2
if-nez v2, :cond_33
invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
:cond_33
check-cast v2, Ljava/lang/Number;
invoke-virtual {v2}, Ljava/lang/Number;->intValue()I
move-result v2
add-int/2addr v2, v3
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
invoke-interface {v0, v1, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_d
.line 117
:cond_42
new-instance p0, Ljava/lang/StringBuilder;
invoke-direct {p0}, Ljava/lang/StringBuilder;-><init>()V
.line 118
invoke-static {v0}, Lkotlin/a/af;->d(Ljava/util/Map;)Ljava/util/List;
move-result-object v0
check-cast v0, Ljava/lang/Iterable;
.line 404
new-instance v1, Lsg/bigo/apm/plugins/memoryinfo/c/a$a;
invoke-direct {v1}, Lsg/bigo/apm/plugins/memoryinfo/c/a$a;-><init>()V
check-cast v1, Ljava/util/Comparator;
invoke-static {v0, v1}, Lkotlin/a/k;->a(Ljava/lang/Iterable;Ljava/util/Comparator;)Ljava/util/List;
move-result-object v0
check-cast v0, Ljava/lang/Iterable;
.line 405
invoke-interface {v0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_5e
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_95
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lkotlin/m;
.line 4000
iget-object v2, v1, Lkotlin/m;->a:Ljava/lang/Object;
.line 405
check-cast v2, Ljava/lang/String;
.line 5000
iget-object v1, v1, Lkotlin/m;->b:Ljava/lang/Object;
.line 405
check-cast v1, Ljava/lang/Number;
invoke-virtual {v1}, Ljava/lang/Number;->intValue()I
move-result v1
.line 123
new-instance v3, Ljava/lang/StringBuilder;
const-string v4, "fd: "
invoke-direct {v3, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v2, ", count: "
invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v1, " \n"
invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {p0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_5e
.line 117
:cond_95
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
const-string v0, "StringBuilder().apply(builderAction).toString()"
invoke-static {p0, v0}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
return-object p0
.end method
.method public static a(Z)Lsg/bigo/apm/plugins/memoryinfo/b/d;
.registers 21
.line 365
invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
move-result-wide v1
if-eqz p0, :cond_33
:try_start_6
const-string v0, "getMemoryInfo"
.line 2041
invoke-static {}, Lsg/bigo/common/ac;->a()Z
move-result v3
if-eqz v3, :cond_33
.line 2042
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, " require in worker thread"
invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
.line 2043
invoke-static {}, Lsg/bigo/common/a;->e()Z
move-result v3
if-eqz v3, :cond_2b
const-string v3, "Worker"
.line 2044
invoke-static {v3, v0}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
goto :goto_33
.line 2046
:cond_2b
new-instance v3, Ljava/lang/IllegalStateException;
invoke-direct {v3, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
check-cast v3, Ljava/lang/Throwable;
throw v3
.line 1051
:cond_33
:goto_33
invoke-static {}, Ljava/lang/Runtime;->getRuntime()Ljava/lang/Runtime;
move-result-object v0
.line 1052
invoke-virtual {v0}, Ljava/lang/Runtime;->freeMemory()J
move-result-wide v3
.line 1053
invoke-virtual {v0}, Ljava/lang/Runtime;->totalMemory()J
move-result-wide v5
sub-long/2addr v5, v3
.line 1054
invoke-static {}, Lsg/bigo/apm/plugins/memoryinfo/c/a;->j()Lsg/bigo/apm/plugins/memoryinfo/b/i;
move-result-object v0
.line 1055
invoke-static {}, Lsg/bigo/apm/plugins/memoryinfo/c/a;->m()Lsg/bigo/apm/plugins/memoryinfo/b/b;
move-result-object v18
.line 1056
invoke-static {}, Lsg/bigo/apm/plugins/memoryinfo/c/a;->i()Lsg/bigo/apm/plugins/memoryinfo/b/c;
move-result-object v19
const-wide/16 v7, 0x400
.line 1369
div-long/2addr v5, v7
long-to-int v6, v5
.line 1370
div-long/2addr v3, v7
long-to-int v9, v3
.line 3000
sget-object v3, Lsg/bigo/apm/plugins/memoryinfo/c/a;->d:Lkotlin/f;
invoke-interface {v3}, Lkotlin/f;->getValue()Ljava/lang/Object;
move-result-object v3
check-cast v3, Ljava/lang/Number;
invoke-virtual {v3}, Ljava/lang/Number;->longValue()J
move-result-wide v3
.line 1371
div-long/2addr v3, v7
long-to-int v10, v3
.line 1062
invoke-static {}, Landroid/os/Debug;->getNativeHeapSize()J
move-result-wide v3
.line 1372
div-long/2addr v3, v7
long-to-int v11, v3
.line 1063
invoke-static {}, Landroid/os/Debug;->getNativeHeapAllocatedSize()J
move-result-wide v3
.line 1373
div-long/2addr v3, v7
long-to-int v12, v3
.line 1064
invoke-static {}, Landroid/os/Debug;->getNativeHeapFreeSize()J
move-result-wide v3
.line 1374
div-long/2addr v3, v7
long-to-int v13, v3
.line 1065
invoke-static {}, Lsg/bigo/apm/plugins/memoryinfo/c/a;->l()I
move-result v14
.line 1066
invoke-static {}, Lsg/bigo/apm/plugins/memoryinfo/c/a;->k()I
move-result v15
if-eqz v0, :cond_81
.line 3010
iget v3, v0, Lsg/bigo/apm/plugins/memoryinfo/b/i;->a:I
move/from16 v16, v3
goto :goto_84
:cond_81
const/4 v3, 0x0
const/16 v16, 0x0
:goto_84
if-eqz v0, :cond_89
.line 3011
iget-object v0, v0, Lsg/bigo/apm/plugins/memoryinfo/b/i;->b:Lsg/bigo/apm/plugins/memoryinfo/b/k;
goto :goto_8a
:cond_89
const/4 v0, 0x0
:goto_8a
move-object/from16 v17, v0
.line 1058
new-instance v0, Lsg/bigo/apm/plugins/memoryinfo/b/d;
move-object v7, v0
move v8, v6
invoke-direct/range {v7 .. v19}, Lsg/bigo/apm/plugins/memoryinfo/b/d;-><init>(IIIIIIIIILsg/bigo/apm/plugins/memoryinfo/b/k;Lsg/bigo/apm/plugins/memoryinfo/b/b;Lsg/bigo/apm/plugins/memoryinfo/b/c;)V
:try_end_93
.catchall {:try_start_6 .. :try_end_93} :catchall_9b
.line 366
invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
move-result-wide v3
sub-long/2addr v3, v1
.line 43
sput-wide v3, Lsg/bigo/apm/plugins/memoryinfo/c/a;->c:J
return-object v0
:catchall_9b
move-exception v0
.line 368
invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
move-result-wide v3
sub-long/2addr v3, v1
.line 43
sput-wide v3, Lsg/bigo/apm/plugins/memoryinfo/c/a;->c:J
throw v0
.end method
.method public static synthetic b()Lsg/bigo/apm/plugins/memoryinfo/b/d;
.registers 1
const/4 v0, 0x1
.line 38
invoke-static {v0}, Lsg/bigo/apm/plugins/memoryinfo/c/a;->a(Z)Lsg/bigo/apm/plugins/memoryinfo/b/d;
move-result-object v0
return-object v0
.end method
.method public static c()J
.registers 5
.line 75
invoke-static {}, Ljava/lang/Runtime;->getRuntime()Ljava/lang/Runtime;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Runtime;->totalMemory()J
move-result-wide v1
invoke-virtual {v0}, Ljava/lang/Runtime;->freeMemory()J
move-result-wide v3
sub-long/2addr v1, v3
return-wide v1
.end method
.method public static d()Ljava/lang/String;
.registers 8
const-string v0, ""
:try_start_2
const-string v1, "fd"
.line 381
new-instance v2, Ljava/io/File;
new-instance v3, Ljava/lang/StringBuilder;
const-string v4, "/proc/"
invoke-direct {v3, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-static {}, Landroid/os/Process;->myPid()I
move-result v4
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const/16 v4, 0x2f
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v2, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 81
invoke-virtual {v2}, Ljava/io/File;->listFiles()[Ljava/io/File;
move-result-object v1
if-eqz v1, :cond_74
.line 382
new-instance v2, Ljava/util/ArrayList;
array-length v3, v1
invoke-direct {v2, v3}, Ljava/util/ArrayList;-><init>(I)V
check-cast v2, Ljava/util/Collection;
.line 383
array-length v3, v1
const/4 v4, 0x0
:goto_33
if-ge v4, v3, :cond_6e
aget-object v5, v1, v4
const-string v6, "file"
.line 83
invoke-static {v5, v6}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {v5}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
move-result-object v5
const-string v6, "file.absolutePath"
invoke-static {v5, v6}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
invoke-static {v5}, Lsg/bigo/apm/plugins/memoryinfo/c/a;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v5
.line 85
move-object v6, v5
check-cast v6, Ljava/lang/CharSequence;
const-string v7, "socket:["
check-cast v7, Ljava/lang/CharSequence;
invoke-static {v6, v7}, Lkotlin/m/p;->c(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
move-result v6
if-eqz v6, :cond_59
const-string v5, "socket"
goto :goto_68
.line 86
:cond_59
move-object v6, v5
check-cast v6, Ljava/lang/CharSequence;
const-string v7, "pipe:["
check-cast v7, Ljava/lang/CharSequence;
invoke-static {v6, v7}, Lkotlin/m/p;->c(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
move-result v6
if-eqz v6, :cond_68
const-string v5, "pipe"
.line 88
:cond_68
:goto_68
invoke-interface {v2, v5}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
add-int/lit8 v4, v4, 0x1
goto :goto_33
.line 385
:cond_6e
check-cast v2, Ljava/util/List;
.line 91
invoke-static {v2}, Lsg/bigo/apm/plugins/memoryinfo/c/a;->a(Ljava/util/List;)Ljava/lang/String;
move-result-object v0
:try_end_74
.catchall {:try_start_2 .. :try_end_74} :catchall_75
:cond_74
return-object v0
.line 387
:catchall_75
invoke-static {}, Lsg/bigo/common/a;->e()Z
return-object v0
.end method
.method public static e()Ljava/lang/String;
.registers 4
:try_start_0
const-string v0, "maps"
.line 444
new-instance v1, Ljava/io/File;
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, "/proc/"
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-static {}, Landroid/os/Process;->myPid()I
move-result v3
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const/16 v3, 0x2f
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {v1, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 183
sget-object v0, Lkotlin/m/d;->a:Ljava/nio/charset/Charset;
new-instance v2, Ljava/io/FileInputStream;
invoke-direct {v2, v1}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
check-cast v2, Ljava/io/InputStream;
new-instance v1, Ljava/io/InputStreamReader;
invoke-direct {v1, v2, v0}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;Ljava/nio/charset/Charset;)V
check-cast v1, Ljava/io/Reader;
new-instance v0, Ljava/io/BufferedReader;
const/16 v2, 0x2000
invoke-direct {v0, v1, v2}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;I)V
check-cast v0, Ljava/io/Closeable;
:try_end_3a
.catchall {:try_start_0 .. :try_end_3a} :catchall_4f
:try_start_3a
move-object v1, v0
check-cast v1, Ljava/io/BufferedReader;
.line 184
check-cast v1, Ljava/io/Reader;
invoke-static {v1}, Lkotlin/io/j;->a(Ljava/io/Reader;)Ljava/lang/String;
move-result-object v1
:try_end_43
.catchall {:try_start_3a .. :try_end_43} :catchall_48
const/4 v2, 0x0
:try_start_44
invoke-static {v0, v2}, Lkotlin/io/b;->a(Ljava/io/Closeable;Ljava/lang/Throwable;)V
:try_end_47
.catchall {:try_start_44 .. :try_end_47} :catchall_4f
return-object v1
:catchall_48
move-exception v1
:try_start_49
throw v1
:try_end_4a
.catchall {:try_start_49 .. :try_end_4a} :catchall_4a
:catchall_4a
move-exception v2
:try_start_4b
invoke-static {v0, v1}, Lkotlin/io/b;->a(Ljava/io/Closeable;Ljava/lang/Throwable;)V
throw v2
:try_end_4f
.catchall {:try_start_4b .. :try_end_4f} :catchall_4f
.line 446
:catchall_4f
invoke-static {}, Lsg/bigo/common/a;->e()Z
const-string v0, ""
return-object v0
.end method
.method public static f()[Ljava/lang/Thread;
.registers 7
const/4 v0, 0x0
new-array v1, v0, [Ljava/lang/Thread;
.line 190
:try_start_3
invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread;
move-result-object v2
const-string v3, "Thread.currentThread()"
invoke-static {v2, v3}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {v2}, Ljava/lang/Thread;->getThreadGroup()Ljava/lang/ThreadGroup;
move-result-object v2
if-nez v2, :cond_16
new-array v0, v0, [Ljava/lang/Thread;
move-object v1, v0
goto :goto_4b
.line 191
:cond_16
:goto_16
invoke-virtual {v2}, Ljava/lang/ThreadGroup;->getParent()Ljava/lang/ThreadGroup;
move-result-object v3
if-eqz v3, :cond_1e
move-object v2, v3
goto :goto_16
.line 196
:cond_1e
invoke-virtual {v2}, Ljava/lang/ThreadGroup;->activeCount()I
move-result v3
mul-int/lit8 v3, v3, 0x3
div-int/lit8 v3, v3, 0x2
.line 460
new-array v4, v3, [Ljava/lang/Thread;
const/4 v5, 0x0
:goto_29
if-ge v5, v3, :cond_31
const/4 v6, 0x0
.line 197
aput-object v6, v4, v5
add-int/lit8 v5, v5, 0x1
goto :goto_29
:cond_31
const/4 v3, 0x1
.line 198
invoke-virtual {v2, v4, v3}, Ljava/lang/ThreadGroup;->enumerate([Ljava/lang/Thread;Z)I
move-result v2
.line 465
new-array v3, v2, [Ljava/lang/Thread;
:goto_38
if-ge v0, v2, :cond_46
.line 200
aget-object v5, v4, v0
if-nez v5, :cond_41
invoke-static {}, Lkotlin/f/b/o;->a()V
:cond_41
aput-object v5, v3, v0
:try_end_43
.catchall {:try_start_3 .. :try_end_43} :catchall_48
add-int/lit8 v0, v0, 0x1
goto :goto_38
:cond_46
move-object v1, v3
goto :goto_4b
.line 471
:catchall_48
invoke-static {}, Lsg/bigo/common/a;->e()Z
:goto_4b
return-object v1
.end method
.method public static g()I
.registers 5
const/4 v0, 0x0
.line 207
:try_start_1
invoke-static {}, Ljava/lang/Runtime;->getRuntime()Ljava/lang/Runtime;
move-result-object v1
const-string v2, "cat /proc/sys/kernel/threads-max"
invoke-virtual {v1, v2}, Ljava/lang/Runtime;->exec(Ljava/lang/String;)Ljava/lang/Process;
move-result-object v1
.line 208
invoke-virtual {v1}, Ljava/lang/Process;->waitFor()I
const-string v2, "process"
.line 209
invoke-static {v1, v2}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {v1}, Ljava/lang/Process;->getInputStream()Ljava/io/InputStream;
move-result-object v1
const-string v2, "process.inputStream"
invoke-static {v1, v2}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
sget-object v2, Lkotlin/m/d;->a:Ljava/nio/charset/Charset;
new-instance v3, Ljava/io/InputStreamReader;
invoke-direct {v3, v1, v2}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;Ljava/nio/charset/Charset;)V
check-cast v3, Ljava/io/Reader;
new-instance v1, Ljava/io/BufferedReader;
const/16 v2, 0x2000
invoke-direct {v1, v3, v2}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;I)V
check-cast v1, Ljava/io/Closeable;
:try_end_2e
.catchall {:try_start_1 .. :try_end_2e} :catchall_5c
:try_start_2e
move-object v2, v1
check-cast v2, Ljava/io/BufferedReader;
.line 210
check-cast v2, Ljava/io/Reader;
invoke-static {v2}, Lkotlin/io/j;->a(Ljava/io/Reader;)Ljava/lang/String;
move-result-object v2
check-cast v2, Ljava/lang/CharSequence;
new-instance v3, Lkotlin/m/l;
const-string v4, "[\n\t ]"
invoke-direct {v3, v4}, Lkotlin/m/l;-><init>(Ljava/lang/String;)V
const-string v4, ""
invoke-virtual {v3, v2, v4}, Lkotlin/m/l;->a(Ljava/lang/CharSequence;Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
invoke-static {v2}, Lkotlin/m/p;->c(Ljava/lang/String;)Ljava/lang/Integer;
move-result-object v2
:try_end_4a
.catchall {:try_start_2e .. :try_end_4a} :catchall_55
const/4 v3, 0x0
.line 209
:try_start_4b
invoke-static {v1, v3}, Lkotlin/io/b;->a(Ljava/io/Closeable;Ljava/lang/Throwable;)V
if-eqz v2, :cond_54
invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
move-result v0
:try_end_54
.catchall {:try_start_4b .. :try_end_54} :catchall_5c
:cond_54
return v0
:catchall_55
move-exception v2
:try_start_56
throw v2
:try_end_57
.catchall {:try_start_56 .. :try_end_57} :catchall_57
:catchall_57
move-exception v3
:try_start_58
invoke-static {v1, v2}, Lkotlin/io/b;->a(Ljava/io/Closeable;Ljava/lang/Throwable;)V
throw v3
:try_end_5c
.catchall {:try_start_58 .. :try_end_5c} :catchall_5c
.line 482
:catchall_5c
invoke-static {}, Lsg/bigo/common/a;->e()Z
return v0
.end method
.method public static h()I
.registers 7
const-string v0, "Max open files"
.line 498
sget-object v1, Lkotlin/w;->a:Lkotlin/w;
:try_start_4
const-string v1, "limits"
.line 508
new-instance v2, Ljava/io/File;
new-instance v3, Ljava/lang/StringBuilder;
const-string v4, "/proc/"
invoke-direct {v3, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-static {}, Landroid/os/Process;->myPid()I
move-result v4
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const/16 v4, 0x2f
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v2, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 510
sget-object v1, Lkotlin/m/d;->a:Ljava/nio/charset/Charset;
.line 511
new-instance v3, Ljava/io/FileInputStream;
invoke-direct {v3, v2}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
check-cast v3, Ljava/io/InputStream;
new-instance v2, Ljava/io/InputStreamReader;
invoke-direct {v2, v3, v1}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;Ljava/nio/charset/Charset;)V
check-cast v2, Ljava/io/Reader;
new-instance v1, Ljava/io/BufferedReader;
const/16 v3, 0x2000
invoke-direct {v1, v2, v3}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;I)V
check-cast v1, Ljava/io/Closeable;
:try_end_3e
.catchall {:try_start_4 .. :try_end_3e} :catchall_a6
:try_start_3e
move-object v2, v1
check-cast v2, Ljava/io/BufferedReader;
invoke-static {v2}, Lkotlin/io/j;->a(Ljava/io/BufferedReader;)Lkotlin/l/g;
move-result-object v2
.line 513
invoke-interface {v2}, Lkotlin/l/g;->iterator()Ljava/util/Iterator;
move-result-object v2
:cond_49
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v3
const/4 v4, 0x0
if-eqz v3, :cond_97
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Ljava/lang/String;
.line 225
move-object v5, v3
check-cast v5, Ljava/lang/CharSequence;
move-object v6, v0
check-cast v6, Ljava/lang/CharSequence;
invoke-static {v5, v6}, Lkotlin/m/p;->c(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
move-result v5
if-eqz v5, :cond_49
const-string v5, ""
const/4 v6, 0x0
.line 5075
invoke-static {v3, v0, v5, v6}, Lkotlin/m/p;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Ljava/lang/String;
move-result-object v3
.line 226
check-cast v3, Ljava/lang/CharSequence;
const-string v5, " "
filled-new-array {v5}, [Ljava/lang/String;
move-result-object v5
invoke-static {v3, v5}, Lkotlin/m/p;->b(Ljava/lang/CharSequence;[Ljava/lang/String;)Ljava/util/List;
move-result-object v3
check-cast v3, Ljava/lang/Iterable;
.line 514
invoke-interface {v3}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object v3
:cond_7b
invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z
move-result v5
if-eqz v5, :cond_49
invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v5
check-cast v5, Ljava/lang/String;
.line 227
invoke-static {v5}, Lkotlin/m/p;->c(Ljava/lang/String;)Ljava/lang/Integer;
move-result-object v5
if-eqz v5, :cond_7b
check-cast v5, Ljava/lang/Number;
invoke-virtual {v5}, Ljava/lang/Number;->intValue()I
move-result v0
:try_end_93
.catchall {:try_start_3e .. :try_end_93} :catchall_9f
.line 228
:try_start_93
invoke-static {v1, v4}, Lkotlin/io/b;->a(Ljava/io/Closeable;Ljava/lang/Throwable;)V
:try_end_96
.catchall {:try_start_93 .. :try_end_96} :catchall_a6
return v0
.line 517
:cond_97
:try_start_97
sget-object v0, Lkotlin/w;->a:Lkotlin/w;
:try_end_99
.catchall {:try_start_97 .. :try_end_99} :catchall_9f
.line 511
:try_start_99
invoke-static {v1, v4}, Lkotlin/io/b;->a(Ljava/io/Closeable;Ljava/lang/Throwable;)V
.line 233
sget-object v0, Lkotlin/w;->a:Lkotlin/w;
:try_end_9e
.catchall {:try_start_99 .. :try_end_9e} :catchall_a6
goto :goto_a9
:catchall_9f
move-exception v0
.line 511
:try_start_a0
throw v0
:try_end_a1
.catchall {:try_start_a0 .. :try_end_a1} :catchall_a1
:catchall_a1
move-exception v2
:try_start_a2
invoke-static {v1, v0}, Lkotlin/io/b;->a(Ljava/io/Closeable;Ljava/lang/Throwable;)V
throw v2
:try_end_a6
.catchall {:try_start_a2 .. :try_end_a6} :catchall_a6
.line 520
:catchall_a6
invoke-static {}, Lsg/bigo/common/a;->e()Z
:goto_a9
const/4 v0, -0x1
return v0
.end method
.method public static i()Lsg/bigo/apm/plugins/memoryinfo/b/c;
.registers 7
const/4 v0, 0x0
:try_start_1
const-string v1, "activity"
.line 265
invoke-static {v1}, Lsg/bigo/common/a;->a(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/app/ActivityManager;
if-nez v1, :cond_c
return-object v0
.line 267
:cond_c
new-instance v2, Landroid/app/ActivityManager$MemoryInfo;
invoke-direct {v2}, Landroid/app/ActivityManager$MemoryInfo;-><init>()V
.line 268
invoke-virtual {v1, v2}, Landroid/app/ActivityManager;->getMemoryInfo(Landroid/app/ActivityManager$MemoryInfo;)V
.line 270
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v3, 0x10
if-lt v1, v3, :cond_1d
.line 271
iget-wide v3, v2, Landroid/app/ActivityManager$MemoryInfo;->totalMem:J
goto :goto_1f
:cond_1d
const-wide/16 v3, 0x0
:goto_1f
const-wide/16 v5, 0x400
.line 542
div-long/2addr v3, v5
long-to-int v1, v3
.line 278
iget-wide v3, v2, Landroid/app/ActivityManager$MemoryInfo;->availMem:J
.line 543
div-long/2addr v3, v5
long-to-int v4, v3
.line 279
iget-boolean v2, v2, Landroid/app/ActivityManager$MemoryInfo;->lowMemory:Z
.line 276
new-instance v3, Lsg/bigo/apm/plugins/memoryinfo/b/c;
invoke-direct {v3, v1, v4, v2}, Lsg/bigo/apm/plugins/memoryinfo/b/c;-><init>(IIZ)V
:try_end_2e
.catchall {:try_start_1 .. :try_end_2e} :catchall_30
move-object v0, v3
goto :goto_33
.line 545
:catchall_30
invoke-static {}, Lsg/bigo/common/a;->e()Z
:goto_33
return-object v0
.end method
.method private static j()Lsg/bigo/apm/plugins/memoryinfo/b/i;
.registers 13
const/4 v0, 0x0
.line 130
:try_start_1
new-instance v1, Lkotlin/m/l;
const-string v2, "\\d+"
invoke-direct {v1, v2}, Lkotlin/m/l;-><init>(Ljava/lang/String;)V
.line 131
new-instance v2, Lsg/bigo/apm/plugins/memoryinfo/c/a$c;
invoke-direct {v2, v1}, Lsg/bigo/apm/plugins/memoryinfo/c/a$c;-><init>(Lkotlin/m/l;)V
check-cast v2, Lkotlin/f/a/b;
const-string v1, "status"
.line 413
new-instance v3, Ljava/io/File;
new-instance v4, Ljava/lang/StringBuilder;
const-string v5, "/proc/"
invoke-direct {v4, v5}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-static {}, Landroid/os/Process;->myPid()I
move-result v5
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const/16 v5, 0x2f
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v3, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 415
sget-object v1, Lkotlin/m/d;->a:Ljava/nio/charset/Charset;
.line 416
new-instance v4, Ljava/io/FileInputStream;
invoke-direct {v4, v3}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
check-cast v4, Ljava/io/InputStream;
new-instance v3, Ljava/io/InputStreamReader;
invoke-direct {v3, v4, v1}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;Ljava/nio/charset/Charset;)V
check-cast v3, Ljava/io/Reader;
new-instance v1, Ljava/io/BufferedReader;
const/16 v4, 0x2000
invoke-direct {v1, v3, v4}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;I)V
check-cast v1, Ljava/io/Closeable;
:try_end_49
.catchall {:try_start_1 .. :try_end_49} :catchall_10c
:try_start_49
move-object v3, v1
check-cast v3, Ljava/io/BufferedReader;
invoke-static {v3}, Lkotlin/io/j;->a(Ljava/io/BufferedReader;)Lkotlin/l/g;
move-result-object v3
.line 418
invoke-interface {v3}, Lkotlin/l/g;->iterator()Ljava/util/Iterator;
move-result-object v3
const/4 v4, 0x0
const/4 v5, 0x0
const/4 v6, 0x0
const/4 v7, 0x0
const/4 v8, 0x0
:cond_59
invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z
move-result v9
if-eqz v9, :cond_f5
invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v9
check-cast v9, Ljava/lang/String;
.line 141
move-object v10, v9
check-cast v10, Ljava/lang/CharSequence;
const-string v11, "Threads"
check-cast v11, Ljava/lang/CharSequence;
const/4 v12, 0x1
invoke-static {v10, v11, v12}, Lkotlin/m/p;->a(Ljava/lang/CharSequence;Ljava/lang/CharSequence;Z)Z
move-result v10
if-eqz v10, :cond_7e
invoke-interface {v2, v9}, Lkotlin/f/a/b;->invoke(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v4
check-cast v4, Ljava/lang/Number;
invoke-virtual {v4}, Ljava/lang/Number;->intValue()I
move-result v4
goto :goto_dd
.line 142
:cond_7e
move-object v10, v9
check-cast v10, Ljava/lang/CharSequence;
const-string v11, "VmSize"
check-cast v11, Ljava/lang/CharSequence;
invoke-static {v10, v11, v12}, Lkotlin/m/p;->a(Ljava/lang/CharSequence;Ljava/lang/CharSequence;Z)Z
move-result v10
if-eqz v10, :cond_96
invoke-interface {v2, v9}, Lkotlin/f/a/b;->invoke(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v5
check-cast v5, Ljava/lang/Number;
invoke-virtual {v5}, Ljava/lang/Number;->intValue()I
move-result v5
goto :goto_dd
.line 143
:cond_96
move-object v10, v9
check-cast v10, Ljava/lang/CharSequence;
const-string v11, "VmPeak"
check-cast v11, Ljava/lang/CharSequence;
invoke-static {v10, v11, v12}, Lkotlin/m/p;->a(Ljava/lang/CharSequence;Ljava/lang/CharSequence;Z)Z
move-result v10
if-eqz v10, :cond_ae
invoke-interface {v2, v9}, Lkotlin/f/a/b;->invoke(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v6
check-cast v6, Ljava/lang/Number;
invoke-virtual {v6}, Ljava/lang/Number;->intValue()I
move-result v6
goto :goto_dd
.line 144
:cond_ae
move-object v10, v9
check-cast v10, Ljava/lang/CharSequence;
const-string v11, "VmRSS"
check-cast v11, Ljava/lang/CharSequence;
invoke-static {v10, v11, v12}, Lkotlin/m/p;->a(Ljava/lang/CharSequence;Ljava/lang/CharSequence;Z)Z
move-result v10
if-eqz v10, :cond_c6
invoke-interface {v2, v9}, Lkotlin/f/a/b;->invoke(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v7
check-cast v7, Ljava/lang/Number;
invoke-virtual {v7}, Ljava/lang/Number;->intValue()I
move-result v7
goto :goto_dd
.line 145
:cond_c6
move-object v10, v9
check-cast v10, Ljava/lang/CharSequence;
const-string v11, "VmHWM"
check-cast v11, Ljava/lang/CharSequence;
invoke-static {v10, v11, v12}, Lkotlin/m/p;->a(Ljava/lang/CharSequence;Ljava/lang/CharSequence;Z)Z
move-result v10
if-eqz v10, :cond_dd
invoke-interface {v2, v9}, Lkotlin/f/a/b;->invoke(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v8
check-cast v8, Ljava/lang/Number;
invoke-virtual {v8}, Ljava/lang/Number;->intValue()I
move-result v8
:cond_dd
:goto_dd
if-eqz v4, :cond_59
if-eqz v5, :cond_59
if-eqz v6, :cond_59
if-eqz v7, :cond_59
if-eqz v8, :cond_59
.line 148
new-instance v2, Lsg/bigo/apm/plugins/memoryinfo/b/i;
.line 150
new-instance v3, Lsg/bigo/apm/plugins/memoryinfo/b/k;
invoke-direct {v3, v5, v6, v7, v8}, Lsg/bigo/apm/plugins/memoryinfo/b/k;-><init>(IIII)V
.line 148
invoke-direct {v2, v4, v3}, Lsg/bigo/apm/plugins/memoryinfo/b/i;-><init>(ILsg/bigo/apm/plugins/memoryinfo/b/k;)V
:try_end_f1
.catchall {:try_start_49 .. :try_end_f1} :catchall_105
:try_start_f1
invoke-static {v1, v0}, Lkotlin/io/b;->a(Ljava/io/Closeable;Ljava/lang/Throwable;)V
:try_end_f4
.catchall {:try_start_f1 .. :try_end_f4} :catchall_10c
return-object v2
.line 420
:cond_f5
:try_start_f5
sget-object v2, Lkotlin/w;->a:Lkotlin/w;
:try_end_f7
.catchall {:try_start_f5 .. :try_end_f7} :catchall_105
.line 416
:try_start_f7
invoke-static {v1, v0}, Lkotlin/io/b;->a(Ljava/io/Closeable;Ljava/lang/Throwable;)V
.line 159
new-instance v1, Lsg/bigo/apm/plugins/memoryinfo/b/i;
.line 161
new-instance v2, Lsg/bigo/apm/plugins/memoryinfo/b/k;
invoke-direct {v2, v5, v6, v7, v8}, Lsg/bigo/apm/plugins/memoryinfo/b/k;-><init>(IIII)V
.line 159
invoke-direct {v1, v4, v2}, Lsg/bigo/apm/plugins/memoryinfo/b/i;-><init>(ILsg/bigo/apm/plugins/memoryinfo/b/k;)V
:try_end_104
.catchall {:try_start_f7 .. :try_end_104} :catchall_10c
return-object v1
:catchall_105
move-exception v2
.line 416
:try_start_106
throw v2
:try_end_107
.catchall {:try_start_106 .. :try_end_107} :catchall_107
:catchall_107
move-exception v3
:try_start_108
invoke-static {v1, v2}, Lkotlin/io/b;->a(Ljava/io/Closeable;Ljava/lang/Throwable;)V
throw v3
:try_end_10c
.catchall {:try_start_108 .. :try_end_10c} :catchall_10c
.line 423
:catchall_10c
invoke-static {}, Lsg/bigo/common/a;->e()Z
return-object v0
.end method
.method private static k()I
.registers 3
const/4 v0, 0x0
.line 172
:try_start_1
invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread;
move-result-object v1
const-string v2, "Thread.currentThread()"
invoke-static {v1, v2}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {v1}, Ljava/lang/Thread;->getThreadGroup()Ljava/lang/ThreadGroup;
move-result-object v1
if-nez v1, :cond_11
goto :goto_21
.line 173
:cond_11
:goto_11
invoke-virtual {v1}, Ljava/lang/ThreadGroup;->getParent()Ljava/lang/ThreadGroup;
move-result-object v2
if-eqz v2, :cond_19
move-object v1, v2
goto :goto_11
.line 178
:cond_19
invoke-virtual {v1}, Ljava/lang/ThreadGroup;->activeCount()I
move-result v0
:try_end_1d
.catchall {:try_start_1 .. :try_end_1d} :catchall_1e
goto :goto_21
.line 434
:catchall_1e
invoke-static {}, Lsg/bigo/common/a;->e()Z
:goto_21
return v0
.end method
.method private static l()I
.registers 5
const/4 v0, 0x0
:try_start_1
const-string v1, "fd"
.line 492
new-instance v2, Ljava/io/File;
new-instance v3, Ljava/lang/StringBuilder;
const-string v4, "/proc/"
invoke-direct {v3, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-static {}, Landroid/os/Process;->myPid()I
move-result v4
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const/16 v4, 0x2f
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v2, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 218
invoke-virtual {v2}, Ljava/io/File;->listFiles()[Ljava/io/File;
move-result-object v1
if-eqz v1, :cond_2d
array-length v0, v1
:try_end_29
.catchall {:try_start_1 .. :try_end_29} :catchall_2a
goto :goto_2d
.line 494
:catchall_2a
invoke-static {}, Lsg/bigo/common/a;->e()Z
:cond_2d
:goto_2d
return v0
.end method
.method private static m()Lsg/bigo/apm/plugins/memoryinfo/b/b;
.registers 9
const/4 v0, 0x0
:try_start_1
const-string v1, "activity"
.line 244
invoke-static {v1}, Lsg/bigo/common/a;->a(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/app/ActivityManager;
if-nez v1, :cond_c
return-object v0
:cond_c
const/4 v2, 0x1
new-array v3, v2, [I
.line 246
invoke-static {}, Landroid/os/Process;->myPid()I
move-result v4
const/4 v5, 0x0
aput v4, v3, v5
invoke-virtual {v1, v3}, Landroid/app/ActivityManager;->getProcessMemoryInfo([I)[Landroid/os/Debug$MemoryInfo;
move-result-object v1
const-string v3, "data"
.line 247
invoke-static {v1, v3}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
array-length v3, v1
if-nez v3, :cond_24
const/4 v3, 0x1
goto :goto_25
:cond_24
const/4 v3, 0x0
:goto_25
xor-int/2addr v2, v3
if-eqz v2, :cond_48
.line 248
aget-object v1, v1, v5
.line 249
new-instance v8, Lsg/bigo/apm/plugins/memoryinfo/b/b;
const-string v2, "memoryInfo"
.line 250
invoke-static {v1, v2}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {v1}, Landroid/os/Debug$MemoryInfo;->getTotalPss()I
move-result v3
.line 251
iget v4, v1, Landroid/os/Debug$MemoryInfo;->dalvikPss:I
.line 252
iget v5, v1, Landroid/os/Debug$MemoryInfo;->nativePss:I
.line 253
invoke-static {v1}, Lsg/bigo/apm/plugins/memoryinfo/c/a;->a(Landroid/os/Debug$MemoryInfo;)I
move-result v6
.line 254
iget v7, v1, Landroid/os/Debug$MemoryInfo;->otherPss:I
move-object v2, v8
.line 249
invoke-direct/range {v2 .. v7}, Lsg/bigo/apm/plugins/memoryinfo/b/b;-><init>(IIIII)V
:try_end_43
.catchall {:try_start_1 .. :try_end_43} :catchall_45
move-object v0, v8
goto :goto_48
.line 532
:catchall_45
invoke-static {}, Lsg/bigo/common/a;->e()Z
:cond_48
:goto_48
return-object v0
.end method