123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154 |
- .class public final Lio/reactivex/internal/schedulers/RxThreadFactory;
- .super Ljava/util/concurrent/atomic/AtomicLong;
- .source "RxThreadFactory.java"
- # interfaces
- .implements Ljava/util/concurrent/ThreadFactory;
- # annotations
- .annotation system Ldalvik/annotation/MemberClasses;
- value = {
- Lio/reactivex/internal/schedulers/RxThreadFactory$RxCustomThread;
- }
- .end annotation
- # static fields
- .field private static final serialVersionUID:J = -0x6c1ac31a817da8a4L
- # instance fields
- .field final nonBlocking:Z
- .field final prefix:Ljava/lang/String;
- .field final priority:I
- # direct methods
- .method public constructor <init>(Ljava/lang/String;)V
- .locals 2
- const/4 v0, 0x5
- const/4 v1, 0x0
- .line 36
- invoke-direct {p0, p1, v0, v1}, Lio/reactivex/internal/schedulers/RxThreadFactory;-><init>(Ljava/lang/String;IZ)V
- return-void
- .end method
- .method public constructor <init>(Ljava/lang/String;I)V
- .locals 1
- const/4 v0, 0x0
- .line 40
- invoke-direct {p0, p1, p2, v0}, Lio/reactivex/internal/schedulers/RxThreadFactory;-><init>(Ljava/lang/String;IZ)V
- return-void
- .end method
- .method public constructor <init>(Ljava/lang/String;IZ)V
- .locals 0
- .line 43
- invoke-direct {p0}, Ljava/util/concurrent/atomic/AtomicLong;-><init>()V
- .line 44
- iput-object p1, p0, Lio/reactivex/internal/schedulers/RxThreadFactory;->prefix:Ljava/lang/String;
- .line 45
- iput p2, p0, Lio/reactivex/internal/schedulers/RxThreadFactory;->priority:I
- .line 46
- iput-boolean p3, p0, Lio/reactivex/internal/schedulers/RxThreadFactory;->nonBlocking:Z
- return-void
- .end method
- # virtual methods
- .method public newThread(Ljava/lang/Runnable;)Ljava/lang/Thread;
- .locals 3
- .line 51
- new-instance v0, Ljava/lang/StringBuilder;
- iget-object v1, p0, Lio/reactivex/internal/schedulers/RxThreadFactory;->prefix:Ljava/lang/String;
- invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
- const/16 v1, 0x2d
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
- invoke-virtual {p0}, Lio/reactivex/internal/schedulers/RxThreadFactory;->incrementAndGet()J
- move-result-wide v1
- invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
- .line 73
- invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v0
- .line 74
- iget-boolean v1, p0, Lio/reactivex/internal/schedulers/RxThreadFactory;->nonBlocking:Z
- if-eqz v1, :cond_0
- new-instance v1, Lio/reactivex/internal/schedulers/RxThreadFactory$RxCustomThread;
- invoke-direct {v1, p1, v0}, Lio/reactivex/internal/schedulers/RxThreadFactory$RxCustomThread;-><init>(Ljava/lang/Runnable;Ljava/lang/String;)V
- goto :goto_0
- :cond_0
- new-instance v1, Ljava/lang/Thread;
- invoke-direct {v1, p1, v0}, Ljava/lang/Thread;-><init>(Ljava/lang/Runnable;Ljava/lang/String;)V
- .line 75
- :goto_0
- iget p1, p0, Lio/reactivex/internal/schedulers/RxThreadFactory;->priority:I
- invoke-virtual {v1, p1}, Ljava/lang/Thread;->setPriority(I)V
- const/4 p1, 0x1
- .line 76
- invoke-virtual {v1, p1}, Ljava/lang/Thread;->setDaemon(Z)V
- return-object v1
- .end method
- .method public toString()Ljava/lang/String;
- .locals 2
- .line 82
- new-instance v0, Ljava/lang/StringBuilder;
- invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
- const-string v1, "RxThreadFactory["
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- iget-object v1, p0, Lio/reactivex/internal/schedulers/RxThreadFactory;->prefix:Ljava/lang/String;
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- const-string v1, "]"
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v0
- return-object v0
- .end method
|