Pools$SynchronizedPool.smali 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. .class public Landroid/support/v4/util/Pools$SynchronizedPool;
  2. .super Landroid/support/v4/util/Pools$SimplePool;
  3. .source "Pools.java"
  4. # annotations
  5. .annotation system Ldalvik/annotation/EnclosingClass;
  6. value = Landroid/support/v4/util/Pools;
  7. .end annotation
  8. .annotation system Ldalvik/annotation/InnerClass;
  9. accessFlags = 0x9
  10. name = "SynchronizedPool"
  11. .end annotation
  12. .annotation system Ldalvik/annotation/Signature;
  13. value = {
  14. "<T:",
  15. "Ljava/lang/Object;",
  16. ">",
  17. "Landroid/support/v4/util/Pools$SimplePool",
  18. "<TT;>;"
  19. }
  20. .end annotation
  21. # instance fields
  22. .field private final mLock:Ljava/lang/Object;
  23. # direct methods
  24. .method public constructor <init>(I)V
  25. .locals 1
  26. .param p1, "maxPoolSize" # I
  27. .prologue
  28. .line 149
  29. .local p0, "this":Landroid/support/v4/util/Pools$SynchronizedPool;, "Landroid/support/v4/util/Pools$SynchronizedPool<TT;>;"
  30. invoke-direct {p0, p1}, Landroid/support/v4/util/Pools$SimplePool;-><init>(I)V
  31. .line 139
  32. new-instance v0, Ljava/lang/Object;
  33. invoke-direct {v0}, Ljava/lang/Object;-><init>()V
  34. iput-object v0, p0, Landroid/support/v4/util/Pools$SynchronizedPool;->mLock:Ljava/lang/Object;
  35. .line 150
  36. return-void
  37. .end method
  38. # virtual methods
  39. .method public acquire()Ljava/lang/Object;
  40. .locals 2
  41. .annotation system Ldalvik/annotation/Signature;
  42. value = {
  43. "()TT;"
  44. }
  45. .end annotation
  46. .prologue
  47. .line 154
  48. .local p0, "this":Landroid/support/v4/util/Pools$SynchronizedPool;, "Landroid/support/v4/util/Pools$SynchronizedPool<TT;>;"
  49. iget-object v1, p0, Landroid/support/v4/util/Pools$SynchronizedPool;->mLock:Ljava/lang/Object;
  50. monitor-enter v1
  51. .line 155
  52. :try_start_0
  53. invoke-super {p0}, Landroid/support/v4/util/Pools$SimplePool;->acquire()Ljava/lang/Object;
  54. move-result-object v0
  55. monitor-exit v1
  56. return-object v0
  57. .line 156
  58. :catchall_0
  59. move-exception v0
  60. monitor-exit v1
  61. :try_end_0
  62. .catchall {:try_start_0 .. :try_end_0} :catchall_0
  63. throw v0
  64. .end method
  65. .method public release(Ljava/lang/Object;)Z
  66. .locals 2
  67. .annotation system Ldalvik/annotation/Signature;
  68. value = {
  69. "(TT;)Z"
  70. }
  71. .end annotation
  72. .prologue
  73. .line 161
  74. .local p0, "this":Landroid/support/v4/util/Pools$SynchronizedPool;, "Landroid/support/v4/util/Pools$SynchronizedPool<TT;>;"
  75. .local p1, "element":Ljava/lang/Object;, "TT;"
  76. iget-object v1, p0, Landroid/support/v4/util/Pools$SynchronizedPool;->mLock:Ljava/lang/Object;
  77. monitor-enter v1
  78. .line 162
  79. :try_start_0
  80. invoke-super {p0, p1}, Landroid/support/v4/util/Pools$SimplePool;->release(Ljava/lang/Object;)Z
  81. move-result v0
  82. monitor-exit v1
  83. return v0
  84. .line 163
  85. :catchall_0
  86. move-exception v0
  87. monitor-exit v1
  88. :try_end_0
  89. .catchall {:try_start_0 .. :try_end_0} :catchall_0
  90. throw v0
  91. .end method