
com.groupbyinc.flux.common.ning.compress.lzf.parallel.PLZFOutputStream.class Maven / Gradle / Ivy
???? 2\ Fcom/groupbyinc/flux/common/ning/compress/lzf/parallel/PLZFOutputStream java/io/FilterOutputStream %java/nio/channels/WritableByteChannel PLZFOutputStream.java %java/nio/channels/FileChannel$MapMode java/nio/channels/FileChannel
MapMode DEFAULT_OUTPUT_BUFFER_SIZE I ??
_outputBuffer [B _position _outputStreamClosed Z blockManager DLcom/groupbyinc/flux/common/ning/compress/lzf/parallel/BlockManager; compressExecutor &Ljava/util/concurrent/ExecutorService;
writeExecutor writeException Ljava/lang/Exception; $assertionsDisabled (Ljava/io/OutputStream;)V getNThreads ()I
! (Ljava/io/OutputStream;II)V #
$ this HLcom/groupbyinc/flux/common/ning/compress/lzf/parallel/PLZFOutputStream; outputStream Ljava/io/OutputStream; (Ljava/io/OutputStream;I)V nThreads
, . 0 2 'java/util/concurrent/ThreadPoolExecutor 4 < java/util/concurrent/TimeUnit 8 SECONDS Ljava/util/concurrent/TimeUnit; : ; 9 < (java/util/concurrent/LinkedBlockingQueue > ()V @
? A I(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;)V C
5 D F allowCoreThreadTimeOut (Z)V H I
5 J java/util/concurrent/Executors L newSingleThreadExecutor (()Ljava/util/concurrent/ExecutorService; N O
M P R Bcom/groupbyinc/flux/common/ning/compress/lzf/parallel/BlockManager T (II)V V
U W Y getBlockFromPool ()[B [ \
U ] _
bufferSize java/lang/Runtime b
getRuntime ()Ljava/lang/Runtime; d e
c f availableProcessors h
c i &java/lang/management/ManagementFactory k getOperatingSystemMXBean .()Ljava/lang/management/OperatingSystemMXBean; m n
l o *java/lang/management/OperatingSystemMXBean q getSystemLoadAverage ()D s t r u java/lang/Math w max (II)I y z
x { loadAverage jmx ,Ljava/lang/management/OperatingSystemMXBean; write (I)V java/io/IOException ? checkNotClosed ? @
? writeCompressedBlock ? @
?
singleByte ([BII)V java/lang/System ? arraycopy *(Ljava/lang/Object;ILjava/lang/Object;II)V ? ?
? ? buffer offset length
BUFFER_LEN free (Ljava/io/InputStream;)V java/io/InputStream ? read ([B)I ? ?
? ? in Ljava/io/InputStream; "(Ljava/nio/channels/FileChannel;)V READ_ONLY 'Ljava/nio/channels/FileChannel$MapMode; ? ? ? size ()J ? ?
? map F(Ljava/nio/channels/FileChannel$MapMode;JJ)Ljava/nio/MappedByteBuffer; ? ?
? (Ljava/nio/ByteBuffer;)I ? ?
? Ljava/nio/channels/FileChannel; src Ljava/nio/MappedByteBuffer; java/nio/ByteBuffer ? remaining ?
? ? hasArray ()Z ? ?
? ? array ? \
? ? arrayOffset ?
? ? limit ?
? ? ? ?
? hasRemaining ? ?
? ? min ? z
x ? get ([BII)Ljava/nio/ByteBuffer; ? ?
? ? toRead Ljava/nio/ByteBuffer; r flush isOpen close java/lang/InterruptedException ? ? java/lang/AssertionError ?
? A releaseBlockToPool ([B)V ? ?
U ? $java/util/concurrent/ExecutorService ? shutdown ? @ ? ? HOURS ? ; 9 ? awaitTermination #(JLjava/util/concurrent/TimeUnit;)Z ? ? ? ? java/util/ArrayList ? ?
? ? java/util/Collection ? Bcom/groupbyinc/flux/common/ning/compress/lzf/parallel/CompressTask ? K([BIILcom/groupbyinc/flux/common/ning/compress/lzf/parallel/BlockManager;)V ?
? ? add (Ljava/lang/Object;)Z ? ? ? ? invokeAll ((Ljava/util/Collection;)Ljava/util/List; ? ? ? MINUTES ; 9 ? @
? @
shutdownNow ()Ljava/util/List;
? checkWriteException
@
(Ljava/lang/Throwable;)V
? java/lang/Throwable i
maxThreads cleanupTasks \Ljava/util/Collection; Ljava/util/Collection; e Ljava/lang/InterruptedException; buf getUnderlyingOutputStream ()Ljava/io/OutputStream; out ) submit >(Ljava/util/concurrent/Callable;)Ljava/util/concurrent/Future;"# ?$ ?com/groupbyinc/flux/common/ning/compress/lzf/parallel/WriteTask& ~(Ljava/io/OutputStream;Ljava/util/concurrent/Future;Lcom/groupbyinc/flux/common/ning/compress/lzf/parallel/PLZFOutputStream;)V (
') execute (Ljava/lang/Runnable;)V+, ?- lzfFuture VLjava/util/concurrent/Future; Ljava/util/concurrent/Future; ioe Ljava/io/IOException; java/lang/StringBuilder4
5 A java/lang/Object7 getClass ()Ljava/lang/Class;9:
8; java/lang/Class= getName ()Ljava/lang/String;?@
>A append -(Ljava/lang/String;)Ljava/lang/StringBuilder;CD
5E already closedG toStringI@
5J (Ljava/lang/String;)V L
?M desiredAssertionStatusP ?
>Q
ConstantValue Code LocalVariableTable LineNumberTable
StackMapTable
Exceptions LocalVariableTypeTable
SourceFile InnerClasses !
S @ T C *+? "? %? U &