public class org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind<K, V> implements org.ehcache.impl.internal.loaderwriter.writebehind.WriteBehind<K, V>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind
  super_class: java.lang.Object
{
  private final java.util.concurrent.locks.ReentrantReadWriteLock rwLock;
    descriptor: Ljava/util/concurrent/locks/ReentrantReadWriteLock;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock readLock;
    descriptor: Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock writeLock;
    descriptor: Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.List<org.ehcache.impl.internal.loaderwriter.writebehind.WriteBehind<K, V>> stripes;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lorg/ehcache/impl/internal/loaderwriter/writebehind/WriteBehind<TK;TV;>;>;

  public void <init>(org.ehcache.core.spi.service.ExecutionService, java.lang.String, org.ehcache.spi.loaderwriter.WriteBehindConfiguration<?>, org.ehcache.spi.loaderwriter.CacheLoaderWriter<K, V>);
    descriptor: (Lorg/ehcache/core/spi/service/ExecutionService;Ljava/lang/String;Lorg/ehcache/spi/loaderwriter/WriteBehindConfiguration;Lorg/ehcache/spi/loaderwriter/CacheLoaderWriter;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=7, args_size=5
        start local 0 // org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind this
        start local 1 // org.ehcache.core.spi.service.ExecutionService executionService
        start local 2 // java.lang.String defaultThreadPool
        start local 3 // org.ehcache.spi.loaderwriter.WriteBehindConfiguration config
        start local 4 // org.ehcache.spi.loaderwriter.CacheLoaderWriter cacheLoaderWriter
         0: .line 38
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 32
            aload 0 /* this */
            new java.util.concurrent.locks.ReentrantReadWriteLock
            dup
            invokespecial java.util.concurrent.locks.ReentrantReadWriteLock.<init>:()V
            putfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.rwLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock;
         2: .line 33
            aload 0 /* this */
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.rwLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;
            putfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.readLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;
         3: .line 34
            aload 0 /* this */
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.rwLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;
            putfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.writeLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;
         4: .line 36
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.stripes:Ljava/util/List;
         5: .line 39
            aload 3 /* config */
            invokeinterface org.ehcache.spi.loaderwriter.WriteBehindConfiguration.getConcurrency:()I
            istore 5 /* writeBehindConcurrency */
        start local 5 // int writeBehindConcurrency
         6: .line 40
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         7: goto 13
         8: .line 41
      StackMap locals: org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind org.ehcache.core.spi.service.ExecutionService java.lang.String org.ehcache.spi.loaderwriter.WriteBehindConfiguration org.ehcache.spi.loaderwriter.CacheLoaderWriter int int
      StackMap stack:
            aload 3 /* config */
            invokeinterface org.ehcache.spi.loaderwriter.WriteBehindConfiguration.getBatchingConfiguration:()Lorg/ehcache/spi/loaderwriter/WriteBehindConfiguration$BatchingConfiguration;
            ifnonnull 11
         9: .line 42
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.stripes:Ljava/util/List;
            new org.ehcache.impl.internal.loaderwriter.writebehind.NonBatchingLocalHeapWriteBehindQueue
            dup
            aload 1 /* executionService */
            aload 2 /* defaultThreadPool */
            aload 3 /* config */
            aload 4 /* cacheLoaderWriter */
            invokespecial org.ehcache.impl.internal.loaderwriter.writebehind.NonBatchingLocalHeapWriteBehindQueue.<init>:(Lorg/ehcache/core/spi/service/ExecutionService;Ljava/lang/String;Lorg/ehcache/spi/loaderwriter/WriteBehindConfiguration;Lorg/ehcache/spi/loaderwriter/CacheLoaderWriter;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        10: .line 43
            goto 12
        11: .line 44
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.stripes:Ljava/util/List;
            new org.ehcache.impl.internal.loaderwriter.writebehind.BatchingLocalHeapWriteBehindQueue
            dup
            aload 1 /* executionService */
            aload 2 /* defaultThreadPool */
            aload 3 /* config */
            aload 4 /* cacheLoaderWriter */
            invokespecial org.ehcache.impl.internal.loaderwriter.writebehind.BatchingLocalHeapWriteBehindQueue.<init>:(Lorg/ehcache/core/spi/service/ExecutionService;Ljava/lang/String;Lorg/ehcache/spi/loaderwriter/WriteBehindConfiguration;Lorg/ehcache/spi/loaderwriter/CacheLoaderWriter;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        12: .line 40
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 6 /* i */
            iload 5 /* writeBehindConcurrency */
            if_icmplt 8
        end local 6 // int i
        14: .line 47
            return
        end local 5 // int writeBehindConcurrency
        end local 4 // org.ehcache.spi.loaderwriter.CacheLoaderWriter cacheLoaderWriter
        end local 3 // org.ehcache.spi.loaderwriter.WriteBehindConfiguration config
        end local 2 // java.lang.String defaultThreadPool
        end local 1 // org.ehcache.core.spi.service.ExecutionService executionService
        end local 0 // org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   15     0                    this  Lorg/ehcache/impl/internal/loaderwriter/writebehind/StripedWriteBehind<TK;TV;>;
            0   15     1        executionService  Lorg/ehcache/core/spi/service/ExecutionService;
            0   15     2       defaultThreadPool  Ljava/lang/String;
            0   15     3                  config  Lorg/ehcache/spi/loaderwriter/WriteBehindConfiguration<*>;
            0   15     4       cacheLoaderWriter  Lorg/ehcache/spi/loaderwriter/CacheLoaderWriter<TK;TV;>;
            6   15     5  writeBehindConcurrency  I
            7   14     6                       i  I
    Signature: (Lorg/ehcache/core/spi/service/ExecutionService;Ljava/lang/String;Lorg/ehcache/spi/loaderwriter/WriteBehindConfiguration<*>;Lorg/ehcache/spi/loaderwriter/CacheLoaderWriter<TK;TV;>;)V
    MethodParameters:
                   Name  Flags
      executionService   
      defaultThreadPool  
      config             
      cacheLoaderWriter  

  private org.ehcache.impl.internal.loaderwriter.writebehind.WriteBehind<K, V> getStripe();
    descriptor: (Ljava/lang/Object;)Lorg/ehcache/impl/internal/loaderwriter/writebehind/WriteBehind;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind this
        start local 1 // java.lang.Object key
         0: .line 50
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.stripes:Ljava/util/List;
            aload 1 /* key */
            invokevirtual java.lang.Object.hashCode:()I
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.stripes:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            irem
            invokestatic java.lang.Math.abs:(I)I
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.ehcache.impl.internal.loaderwriter.writebehind.WriteBehind
            areturn
        end local 1 // java.lang.Object key
        end local 0 // org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/ehcache/impl/internal/loaderwriter/writebehind/StripedWriteBehind<TK;TV;>;
            0    1     1   key  Ljava/lang/Object;
    Signature: (Ljava/lang/Object;)Lorg/ehcache/impl/internal/loaderwriter/writebehind/WriteBehind<TK;TV;>;
    MethodParameters:
      Name  Flags
      key   final

  public void start();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=4, args_size=1
        start local 0 // org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind this
         0: .line 55
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.writeLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock.lock:()V
         1: .line 57
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.stripes:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2
            goto 4
      StackMap locals: org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind top java.util.Iterator
      StackMap stack:
         2: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.ehcache.impl.internal.loaderwriter.writebehind.WriteBehind
            astore 1 /* queue */
        start local 1 // org.ehcache.impl.internal.loaderwriter.writebehind.WriteBehind queue
         3: .line 58
            aload 1 /* queue */
            invokeinterface org.ehcache.impl.internal.loaderwriter.writebehind.WriteBehind.start:()V
        end local 1 // org.ehcache.impl.internal.loaderwriter.writebehind.WriteBehind queue
         4: .line 57
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 60
            goto 9
      StackMap locals: org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind
      StackMap stack: java.lang.Throwable
         6: astore 3
         7: .line 61
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.writeLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock.unlock:()V
         8: .line 62
            aload 3
            athrow
         9: .line 61
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.writeLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock.unlock:()V
        10: .line 63
            return
        end local 0 // org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0   this  Lorg/ehcache/impl/internal/loaderwriter/writebehind/StripedWriteBehind<TK;TV;>;
            3    4     1  queue  Lorg/ehcache/impl/internal/loaderwriter/writebehind/WriteBehind<TK;TV;>;
      Exception table:
        from    to  target  type
           1     6       6  any

  public V load();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind this
        start local 1 // java.lang.Object key
         0: .line 68
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.readLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.lock:()V
         1: .line 70
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.getStripe:(Ljava/lang/Object;)Lorg/ehcache/impl/internal/loaderwriter/writebehind/WriteBehind;
            aload 1 /* key */
            invokeinterface org.ehcache.impl.internal.loaderwriter.writebehind.WriteBehind.load:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 2 /* v */
        start local 2 // java.lang.Object v
         2: .line 71
            goto 6
        end local 2 // java.lang.Object v
      StackMap locals:
      StackMap stack: java.lang.Throwable
         3: astore 3
         4: .line 72
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.readLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.unlock:()V
         5: .line 73
            aload 3
            athrow
        start local 2 // java.lang.Object v
         6: .line 72
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.readLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.unlock:()V
         7: .line 74
            aload 2 /* v */
            areturn
        end local 2 // java.lang.Object v
        end local 1 // java.lang.Object key
        end local 0 // org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/ehcache/impl/internal/loaderwriter/writebehind/StripedWriteBehind<TK;TV;>;
            0    8     1   key  TK;
            2    3     2     v  TV;
            6    8     2     v  TV;
      Exception table:
        from    to  target  type
           1     3       3  any
    Exceptions:
      throws java.lang.Exception
    Signature: (TK;)TV;
    MethodParameters:
      Name  Flags
      key   

  public void write(K, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object value
         0: .line 79
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.readLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.lock:()V
         1: .line 81
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.getStripe:(Ljava/lang/Object;)Lorg/ehcache/impl/internal/loaderwriter/writebehind/WriteBehind;
            aload 1 /* key */
            aload 2 /* value */
            invokeinterface org.ehcache.impl.internal.loaderwriter.writebehind.WriteBehind.write:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 82
            goto 6
      StackMap locals:
      StackMap stack: java.lang.Throwable
         3: astore 3
         4: .line 83
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.readLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.unlock:()V
         5: .line 84
            aload 3
            athrow
         6: .line 83
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.readLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.unlock:()V
         7: .line 85
            return
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object key
        end local 0 // org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lorg/ehcache/impl/internal/loaderwriter/writebehind/StripedWriteBehind<TK;TV;>;
            0    8     1    key  TK;
            0    8     2  value  TV;
      Exception table:
        from    to  target  type
           1     3       3  any
    Exceptions:
      throws java.lang.Exception
    Signature: (TK;TV;)V
    MethodParameters:
       Name  Flags
      key    
      value  

  public void delete();
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind this
        start local 1 // java.lang.Object key
         0: .line 89
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.readLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.lock:()V
         1: .line 91
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.getStripe:(Ljava/lang/Object;)Lorg/ehcache/impl/internal/loaderwriter/writebehind/WriteBehind;
            aload 1 /* key */
            invokeinterface org.ehcache.impl.internal.loaderwriter.writebehind.WriteBehind.delete:(Ljava/lang/Object;)V
         2: .line 92
            goto 6
      StackMap locals:
      StackMap stack: java.lang.Throwable
         3: astore 2
         4: .line 93
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.readLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.unlock:()V
         5: .line 94
            aload 2
            athrow
         6: .line 93
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.readLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.unlock:()V
         7: .line 95
            return
        end local 1 // java.lang.Object key
        end local 0 // org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/ehcache/impl/internal/loaderwriter/writebehind/StripedWriteBehind<TK;TV;>;
            0    8     1   key  TK;
      Exception table:
        from    to  target  type
           1     3       3  any
    Exceptions:
      throws java.lang.Exception
    Signature: (TK;)V
    MethodParameters:
      Name  Flags
      key   

  public void stop();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=4, args_size=1
        start local 0 // org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind this
         0: .line 99
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.writeLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock.lock:()V
         1: .line 101
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.stripes:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2
            goto 4
      StackMap locals: org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind top java.util.Iterator
      StackMap stack:
         2: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.ehcache.impl.internal.loaderwriter.writebehind.WriteBehind
            astore 1 /* queue */
        start local 1 // org.ehcache.impl.internal.loaderwriter.writebehind.WriteBehind queue
         3: .line 102
            aload 1 /* queue */
            invokeinterface org.ehcache.impl.internal.loaderwriter.writebehind.WriteBehind.stop:()V
        end local 1 // org.ehcache.impl.internal.loaderwriter.writebehind.WriteBehind queue
         4: .line 101
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 104
            goto 9
      StackMap locals: org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind
      StackMap stack: java.lang.Throwable
         6: astore 3
         7: .line 105
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.writeLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock.unlock:()V
         8: .line 106
            aload 3
            athrow
         9: .line 105
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.writeLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock.unlock:()V
        10: .line 107
            return
        end local 0 // org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0   this  Lorg/ehcache/impl/internal/loaderwriter/writebehind/StripedWriteBehind<TK;TV;>;
            3    4     1  queue  Lorg/ehcache/impl/internal/loaderwriter/writebehind/WriteBehind<TK;TV;>;
      Exception table:
        from    to  target  type
           1     6       6  any

  public long getQueueSize();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind this
         0: .line 111
            iconst_0
            istore 1 /* size */
        start local 1 // int size
         1: .line 112
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.readLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.lock:()V
         2: .line 114
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.stripes:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind int top java.util.Iterator
      StackMap stack:
         3: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.ehcache.impl.internal.loaderwriter.writebehind.WriteBehind
            astore 2 /* stripe */
        start local 2 // org.ehcache.impl.internal.loaderwriter.writebehind.WriteBehind stripe
         4: .line 115
            iload 1 /* size */
            i2l
            aload 2 /* stripe */
            invokeinterface org.ehcache.impl.internal.loaderwriter.writebehind.WriteBehind.getQueueSize:()J
            ladd
            l2i
            istore 1 /* size */
        end local 2 // org.ehcache.impl.internal.loaderwriter.writebehind.WriteBehind stripe
         5: .line 114
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 117
            goto 10
      StackMap locals: org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind int
      StackMap stack: java.lang.Throwable
         7: astore 4
         8: .line 118
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.readLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.unlock:()V
         9: .line 119
            aload 4
            athrow
        10: .line 118
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind.readLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;
            invokevirtual java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.unlock:()V
        11: .line 120
            iload 1 /* size */
            i2l
            lreturn
        end local 1 // int size
        end local 0 // org.ehcache.impl.internal.loaderwriter.writebehind.StripedWriteBehind this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   12     0    this  Lorg/ehcache/impl/internal/loaderwriter/writebehind/StripedWriteBehind<TK;TV;>;
            1   12     1    size  I
            4    5     2  stripe  Lorg/ehcache/impl/internal/loaderwriter/writebehind/WriteBehind<TK;TV;>;
      Exception table:
        from    to  target  type
           2     7       7  any
}
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>Ljava/lang/Object;Lorg/ehcache/impl/internal/loaderwriter/writebehind/WriteBehind<TK;TV;>;
SourceFile: "StripedWriteBehind.java"
InnerClasses:
  public ReadLock = java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock of java.util.concurrent.locks.ReentrantReadWriteLock
  public WriteLock = java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock of java.util.concurrent.locks.ReentrantReadWriteLock
  public abstract BatchingConfiguration = org.ehcache.spi.loaderwriter.WriteBehindConfiguration$BatchingConfiguration of org.ehcache.spi.loaderwriter.WriteBehindConfiguration