.class public final Lcom/google/common/util/concurrent/Uninterruptibles; .super Ljava/lang/Object; .source "Uninterruptibles.java" # annotations .annotation build Lcom/google/common/annotations/GwtCompatible; emulated = true .end annotation .annotation runtime Lcom/google/common/util/concurrent/ElementTypesAreNonnullByDefault; .end annotation # direct methods .method private constructor ()V .locals 0 .line 1 invoke-direct {p0}, Ljava/lang/Object;->()V return-void .end method .method public static awaitTerminationUninterruptibly(Ljava/util/concurrent/ExecutorService;)V .locals 3 .annotation build Lcom/google/common/annotations/Beta; .end annotation .annotation build Lcom/google/common/annotations/GwtIncompatible; .end annotation .line 1 sget-object v0, Ljava/util/concurrent/TimeUnit;->NANOSECONDS:Ljava/util/concurrent/TimeUnit; const-wide v1, 0x7fffffffffffffffL invoke-static {p0, v1, v2, v0}, Lcom/google/common/util/concurrent/Uninterruptibles;->awaitTerminationUninterruptibly(Ljava/util/concurrent/ExecutorService;JLjava/util/concurrent/TimeUnit;)Z move-result p0 invoke-static {p0}, Lcom/google/common/base/Verify;->verify(Z)V return-void .end method .method public static awaitTerminationUninterruptibly(Ljava/util/concurrent/ExecutorService;JLjava/util/concurrent/TimeUnit;)Z .locals 3 .annotation build Lcom/google/common/annotations/Beta; .end annotation .annotation build Lcom/google/common/annotations/GwtIncompatible; .end annotation const/4 v0, 0x0 .line 2 :try_start_0 invoke-virtual {p3, p1, p2}, Ljava/util/concurrent/TimeUnit;->toNanos(J)J move-result-wide p1 .line 3 invoke-static {}, Ljava/lang/System;->nanoTime()J move-result-wide v1 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 add-long/2addr v1, p1 .line 4 :goto_0 :try_start_1 sget-object p3, Ljava/util/concurrent/TimeUnit;->NANOSECONDS:Ljava/util/concurrent/TimeUnit; invoke-interface {p0, p1, p2, p3}, Ljava/util/concurrent/ExecutorService;->awaitTermination(JLjava/util/concurrent/TimeUnit;)Z move-result p0 :try_end_1 .catch Ljava/lang/InterruptedException; {:try_start_1 .. :try_end_1} :catch_0 .catchall {:try_start_1 .. :try_end_1} :catchall_0 if-eqz v0, :cond_0 .line 5 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p1 invoke-virtual {p1}, Ljava/lang/Thread;->interrupt()V :cond_0 return p0 :catch_0 const/4 v0, 0x1 .line 6 :try_start_2 invoke-static {}, Ljava/lang/System;->nanoTime()J move-result-wide p1 :try_end_2 .catchall {:try_start_2 .. :try_end_2} :catchall_0 sub-long p1, v1, p1 goto :goto_0 :catchall_0 move-exception p0 if-eqz v0, :cond_1 .line 7 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p1 invoke-virtual {p1}, Ljava/lang/Thread;->interrupt()V .line 8 :cond_1 throw p0 .end method .method public static awaitUninterruptibly(Ljava/util/concurrent/CountDownLatch;)V .locals 1 .annotation build Lcom/google/common/annotations/GwtIncompatible; .end annotation const/4 v0, 0x0 .line 1 :goto_0 :try_start_0 invoke-virtual {p0}, Ljava/util/concurrent/CountDownLatch;->await()V :try_end_0 .catch Ljava/lang/InterruptedException; {:try_start_0 .. :try_end_0} :catch_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 if-eqz v0, :cond_0 .line 2 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p0 invoke-virtual {p0}, Ljava/lang/Thread;->interrupt()V :cond_0 return-void :catchall_0 move-exception p0 if-eqz v0, :cond_1 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object v0 invoke-virtual {v0}, Ljava/lang/Thread;->interrupt()V .line 3 :cond_1 throw p0 :catch_0 const/4 v0, 0x1 goto :goto_0 .end method .method public static awaitUninterruptibly(Ljava/util/concurrent/CountDownLatch;JLjava/util/concurrent/TimeUnit;)Z .locals 3 .annotation build Lcom/google/common/annotations/GwtIncompatible; .end annotation .annotation build Lcom/google/errorprone/annotations/CanIgnoreReturnValue; .end annotation const/4 v0, 0x0 .line 4 :try_start_0 invoke-virtual {p3, p1, p2}, Ljava/util/concurrent/TimeUnit;->toNanos(J)J move-result-wide p1 .line 5 invoke-static {}, Ljava/lang/System;->nanoTime()J move-result-wide v1 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 add-long/2addr v1, p1 .line 6 :goto_0 :try_start_1 sget-object p3, Ljava/util/concurrent/TimeUnit;->NANOSECONDS:Ljava/util/concurrent/TimeUnit; invoke-virtual {p0, p1, p2, p3}, Ljava/util/concurrent/CountDownLatch;->await(JLjava/util/concurrent/TimeUnit;)Z move-result p0 :try_end_1 .catch Ljava/lang/InterruptedException; {:try_start_1 .. :try_end_1} :catch_0 .catchall {:try_start_1 .. :try_end_1} :catchall_0 if-eqz v0, :cond_0 .line 7 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p1 invoke-virtual {p1}, Ljava/lang/Thread;->interrupt()V :cond_0 return p0 :catch_0 const/4 v0, 0x1 .line 8 :try_start_2 invoke-static {}, Ljava/lang/System;->nanoTime()J move-result-wide p1 :try_end_2 .catchall {:try_start_2 .. :try_end_2} :catchall_0 sub-long p1, v1, p1 goto :goto_0 :catchall_0 move-exception p0 if-eqz v0, :cond_1 .line 9 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p1 invoke-virtual {p1}, Ljava/lang/Thread;->interrupt()V .line 10 :cond_1 throw p0 .end method .method public static awaitUninterruptibly(Ljava/util/concurrent/locks/Condition;JLjava/util/concurrent/TimeUnit;)Z .locals 3 .annotation build Lcom/google/common/annotations/GwtIncompatible; .end annotation const/4 v0, 0x0 .line 11 :try_start_0 invoke-virtual {p3, p1, p2}, Ljava/util/concurrent/TimeUnit;->toNanos(J)J move-result-wide p1 .line 12 invoke-static {}, Ljava/lang/System;->nanoTime()J move-result-wide v1 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 add-long/2addr v1, p1 .line 13 :goto_0 :try_start_1 sget-object p3, Ljava/util/concurrent/TimeUnit;->NANOSECONDS:Ljava/util/concurrent/TimeUnit; invoke-interface {p0, p1, p2, p3}, Ljava/util/concurrent/locks/Condition;->await(JLjava/util/concurrent/TimeUnit;)Z move-result p0 :try_end_1 .catch Ljava/lang/InterruptedException; {:try_start_1 .. :try_end_1} :catch_0 .catchall {:try_start_1 .. :try_end_1} :catchall_0 if-eqz v0, :cond_0 .line 14 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p1 invoke-virtual {p1}, Ljava/lang/Thread;->interrupt()V :cond_0 return p0 :catch_0 const/4 v0, 0x1 .line 15 :try_start_2 invoke-static {}, Ljava/lang/System;->nanoTime()J move-result-wide p1 :try_end_2 .catchall {:try_start_2 .. :try_end_2} :catchall_0 sub-long p1, v1, p1 goto :goto_0 :catchall_0 move-exception p0 if-eqz v0, :cond_1 .line 16 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p1 invoke-virtual {p1}, Ljava/lang/Thread;->interrupt()V .line 17 :cond_1 throw p0 .end method .method public static getUninterruptibly(Ljava/util/concurrent/Future;)Ljava/lang/Object; .locals 1 .annotation runtime Lcom/google/common/util/concurrent/ParametricNullness; .end annotation .annotation build Lcom/google/errorprone/annotations/CanIgnoreReturnValue; .end annotation .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/concurrent/Future<", "TV;>;)TV;" } .end annotation .annotation system Ldalvik/annotation/Throws; value = { Ljava/util/concurrent/ExecutionException; } .end annotation const/4 v0, 0x0 .line 1 :goto_0 :try_start_0 invoke-interface {p0}, Ljava/util/concurrent/Future;->get()Ljava/lang/Object; move-result-object p0 :try_end_0 .catch Ljava/lang/InterruptedException; {:try_start_0 .. :try_end_0} :catch_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 if-eqz v0, :cond_0 .line 2 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object v0 invoke-virtual {v0}, Ljava/lang/Thread;->interrupt()V :cond_0 return-object p0 :catchall_0 move-exception p0 if-eqz v0, :cond_1 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object v0 invoke-virtual {v0}, Ljava/lang/Thread;->interrupt()V .line 3 :cond_1 throw p0 :catch_0 const/4 v0, 0x1 goto :goto_0 .end method .method public static getUninterruptibly(Ljava/util/concurrent/Future;JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object; .locals 3 .annotation build Lcom/google/common/annotations/GwtIncompatible; .end annotation .annotation runtime Lcom/google/common/util/concurrent/ParametricNullness; .end annotation .annotation build Lcom/google/errorprone/annotations/CanIgnoreReturnValue; .end annotation .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/concurrent/Future<", "TV;>;J", "Ljava/util/concurrent/TimeUnit;", ")TV;" } .end annotation .annotation system Ldalvik/annotation/Throws; value = { Ljava/util/concurrent/ExecutionException;, Ljava/util/concurrent/TimeoutException; } .end annotation const/4 v0, 0x0 .line 4 :try_start_0 invoke-virtual {p3, p1, p2}, Ljava/util/concurrent/TimeUnit;->toNanos(J)J move-result-wide p1 .line 5 invoke-static {}, Ljava/lang/System;->nanoTime()J move-result-wide v1 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 add-long/2addr v1, p1 .line 6 :goto_0 :try_start_1 sget-object p3, Ljava/util/concurrent/TimeUnit;->NANOSECONDS:Ljava/util/concurrent/TimeUnit; invoke-interface {p0, p1, p2, p3}, Ljava/util/concurrent/Future;->get(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object; move-result-object p0 :try_end_1 .catch Ljava/lang/InterruptedException; {:try_start_1 .. :try_end_1} :catch_0 .catchall {:try_start_1 .. :try_end_1} :catchall_0 if-eqz v0, :cond_0 .line 7 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p1 invoke-virtual {p1}, Ljava/lang/Thread;->interrupt()V :cond_0 return-object p0 :catch_0 const/4 v0, 0x1 .line 8 :try_start_2 invoke-static {}, Ljava/lang/System;->nanoTime()J move-result-wide p1 :try_end_2 .catchall {:try_start_2 .. :try_end_2} :catchall_0 sub-long p1, v1, p1 goto :goto_0 :catchall_0 move-exception p0 if-eqz v0, :cond_1 .line 9 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p1 invoke-virtual {p1}, Ljava/lang/Thread;->interrupt()V .line 10 :cond_1 throw p0 .end method .method public static joinUninterruptibly(Ljava/lang/Thread;)V .locals 1 .annotation build Lcom/google/common/annotations/GwtIncompatible; .end annotation const/4 v0, 0x0 .line 1 :goto_0 :try_start_0 invoke-virtual {p0}, Ljava/lang/Thread;->join()V :try_end_0 .catch Ljava/lang/InterruptedException; {:try_start_0 .. :try_end_0} :catch_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 if-eqz v0, :cond_0 .line 2 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p0 invoke-virtual {p0}, Ljava/lang/Thread;->interrupt()V :cond_0 return-void :catchall_0 move-exception p0 if-eqz v0, :cond_1 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object v0 invoke-virtual {v0}, Ljava/lang/Thread;->interrupt()V .line 3 :cond_1 throw p0 :catch_0 const/4 v0, 0x1 goto :goto_0 .end method .method public static joinUninterruptibly(Ljava/lang/Thread;JLjava/util/concurrent/TimeUnit;)V .locals 3 .annotation build Lcom/google/common/annotations/GwtIncompatible; .end annotation .line 4 invoke-static {p0}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; const/4 v0, 0x0 .line 5 :try_start_0 invoke-virtual {p3, p1, p2}, Ljava/util/concurrent/TimeUnit;->toNanos(J)J move-result-wide p1 .line 6 invoke-static {}, Ljava/lang/System;->nanoTime()J move-result-wide v1 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 add-long/2addr v1, p1 .line 7 :goto_0 :try_start_1 sget-object p3, Ljava/util/concurrent/TimeUnit;->NANOSECONDS:Ljava/util/concurrent/TimeUnit; invoke-virtual {p3, p0, p1, p2}, Ljava/util/concurrent/TimeUnit;->timedJoin(Ljava/lang/Thread;J)V :try_end_1 .catch Ljava/lang/InterruptedException; {:try_start_1 .. :try_end_1} :catch_0 .catchall {:try_start_1 .. :try_end_1} :catchall_0 if-eqz v0, :cond_0 .line 8 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p0 invoke-virtual {p0}, Ljava/lang/Thread;->interrupt()V :cond_0 return-void :catch_0 const/4 v0, 0x1 .line 9 :try_start_2 invoke-static {}, Ljava/lang/System;->nanoTime()J move-result-wide p1 :try_end_2 .catchall {:try_start_2 .. :try_end_2} :catchall_0 sub-long p1, v1, p1 goto :goto_0 :catchall_0 move-exception p0 if-eqz v0, :cond_1 .line 10 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p1 invoke-virtual {p1}, Ljava/lang/Thread;->interrupt()V .line 11 :cond_1 throw p0 .end method .method public static putUninterruptibly(Ljava/util/concurrent/BlockingQueue;Ljava/lang/Object;)V .locals 1 .annotation build Lcom/google/common/annotations/GwtIncompatible; .end annotation .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/concurrent/BlockingQueue<", "TE;>;TE;)V" } .end annotation const/4 v0, 0x0 .line 1 :goto_0 :try_start_0 invoke-interface {p0, p1}, Ljava/util/concurrent/BlockingQueue;->put(Ljava/lang/Object;)V :try_end_0 .catch Ljava/lang/InterruptedException; {:try_start_0 .. :try_end_0} :catch_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 if-eqz v0, :cond_0 .line 2 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p0 invoke-virtual {p0}, Ljava/lang/Thread;->interrupt()V :cond_0 return-void :catchall_0 move-exception p0 if-eqz v0, :cond_1 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p1 invoke-virtual {p1}, Ljava/lang/Thread;->interrupt()V .line 3 :cond_1 throw p0 :catch_0 const/4 v0, 0x1 goto :goto_0 .end method .method public static sleepUninterruptibly(JLjava/util/concurrent/TimeUnit;)V .locals 3 .annotation build Lcom/google/common/annotations/GwtIncompatible; .end annotation const/4 v0, 0x0 .line 1 :try_start_0 invoke-virtual {p2, p0, p1}, Ljava/util/concurrent/TimeUnit;->toNanos(J)J move-result-wide p0 .line 2 invoke-static {}, Ljava/lang/System;->nanoTime()J move-result-wide v1 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 add-long/2addr v1, p0 .line 3 :goto_0 :try_start_1 sget-object p2, Ljava/util/concurrent/TimeUnit;->NANOSECONDS:Ljava/util/concurrent/TimeUnit; invoke-virtual {p2, p0, p1}, Ljava/util/concurrent/TimeUnit;->sleep(J)V :try_end_1 .catch Ljava/lang/InterruptedException; {:try_start_1 .. :try_end_1} :catch_0 .catchall {:try_start_1 .. :try_end_1} :catchall_0 if-eqz v0, :cond_0 .line 4 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p0 invoke-virtual {p0}, Ljava/lang/Thread;->interrupt()V :cond_0 return-void :catch_0 const/4 v0, 0x1 .line 5 :try_start_2 invoke-static {}, Ljava/lang/System;->nanoTime()J move-result-wide p0 :try_end_2 .catchall {:try_start_2 .. :try_end_2} :catchall_0 sub-long p0, v1, p0 goto :goto_0 :catchall_0 move-exception p0 if-eqz v0, :cond_1 .line 6 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p1 invoke-virtual {p1}, Ljava/lang/Thread;->interrupt()V .line 7 :cond_1 throw p0 .end method .method public static takeUninterruptibly(Ljava/util/concurrent/BlockingQueue;)Ljava/lang/Object; .locals 1 .annotation build Lcom/google/common/annotations/GwtIncompatible; .end annotation .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/concurrent/BlockingQueue<", "TE;>;)TE;" } .end annotation const/4 v0, 0x0 .line 1 :goto_0 :try_start_0 invoke-interface {p0}, Ljava/util/concurrent/BlockingQueue;->take()Ljava/lang/Object; move-result-object p0 :try_end_0 .catch Ljava/lang/InterruptedException; {:try_start_0 .. :try_end_0} :catch_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 if-eqz v0, :cond_0 .line 2 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object v0 invoke-virtual {v0}, Ljava/lang/Thread;->interrupt()V :cond_0 return-object p0 :catchall_0 move-exception p0 if-eqz v0, :cond_1 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object v0 invoke-virtual {v0}, Ljava/lang/Thread;->interrupt()V .line 3 :cond_1 throw p0 :catch_0 const/4 v0, 0x1 goto :goto_0 .end method .method public static tryAcquireUninterruptibly(Ljava/util/concurrent/Semaphore;IJLjava/util/concurrent/TimeUnit;)Z .locals 3 .annotation build Lcom/google/common/annotations/GwtIncompatible; .end annotation const/4 v0, 0x0 .line 2 :try_start_0 invoke-virtual {p4, p2, p3}, Ljava/util/concurrent/TimeUnit;->toNanos(J)J move-result-wide p2 .line 3 invoke-static {}, Ljava/lang/System;->nanoTime()J move-result-wide v1 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 add-long/2addr v1, p2 .line 4 :goto_0 :try_start_1 sget-object p4, Ljava/util/concurrent/TimeUnit;->NANOSECONDS:Ljava/util/concurrent/TimeUnit; invoke-virtual {p0, p1, p2, p3, p4}, Ljava/util/concurrent/Semaphore;->tryAcquire(IJLjava/util/concurrent/TimeUnit;)Z move-result p0 :try_end_1 .catch Ljava/lang/InterruptedException; {:try_start_1 .. :try_end_1} :catch_0 .catchall {:try_start_1 .. :try_end_1} :catchall_0 if-eqz v0, :cond_0 .line 5 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p1 invoke-virtual {p1}, Ljava/lang/Thread;->interrupt()V :cond_0 return p0 :catch_0 const/4 v0, 0x1 .line 6 :try_start_2 invoke-static {}, Ljava/lang/System;->nanoTime()J move-result-wide p2 :try_end_2 .catchall {:try_start_2 .. :try_end_2} :catchall_0 sub-long p2, v1, p2 goto :goto_0 :catchall_0 move-exception p0 if-eqz v0, :cond_1 .line 7 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p1 invoke-virtual {p1}, Ljava/lang/Thread;->interrupt()V .line 8 :cond_1 throw p0 .end method .method public static tryAcquireUninterruptibly(Ljava/util/concurrent/Semaphore;JLjava/util/concurrent/TimeUnit;)Z .locals 1 .annotation build Lcom/google/common/annotations/GwtIncompatible; .end annotation const/4 v0, 0x1 .line 1 invoke-static {p0, v0, p1, p2, p3}, Lcom/google/common/util/concurrent/Uninterruptibles;->tryAcquireUninterruptibly(Ljava/util/concurrent/Semaphore;IJLjava/util/concurrent/TimeUnit;)Z move-result p0 return p0 .end method .method public static tryLockUninterruptibly(Ljava/util/concurrent/locks/Lock;JLjava/util/concurrent/TimeUnit;)Z .locals 3 .annotation build Lcom/google/common/annotations/GwtIncompatible; .end annotation const/4 v0, 0x0 .line 1 :try_start_0 invoke-virtual {p3, p1, p2}, Ljava/util/concurrent/TimeUnit;->toNanos(J)J move-result-wide p1 .line 2 invoke-static {}, Ljava/lang/System;->nanoTime()J move-result-wide v1 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 add-long/2addr v1, p1 .line 3 :goto_0 :try_start_1 sget-object p3, Ljava/util/concurrent/TimeUnit;->NANOSECONDS:Ljava/util/concurrent/TimeUnit; invoke-interface {p0, p1, p2, p3}, Ljava/util/concurrent/locks/Lock;->tryLock(JLjava/util/concurrent/TimeUnit;)Z move-result p0 :try_end_1 .catch Ljava/lang/InterruptedException; {:try_start_1 .. :try_end_1} :catch_0 .catchall {:try_start_1 .. :try_end_1} :catchall_0 if-eqz v0, :cond_0 .line 4 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p1 invoke-virtual {p1}, Ljava/lang/Thread;->interrupt()V :cond_0 return p0 :catch_0 const/4 v0, 0x1 .line 5 :try_start_2 invoke-static {}, Ljava/lang/System;->nanoTime()J move-result-wide p1 :try_end_2 .catchall {:try_start_2 .. :try_end_2} :catchall_0 sub-long p1, v1, p1 goto :goto_0 :catchall_0 move-exception p0 if-eqz v0, :cond_1 .line 6 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p1 invoke-virtual {p1}, Ljava/lang/Thread;->interrupt()V .line 7 :cond_1 throw p0 .end method