com.google.common.util.concurrent.MoreExecutors#newSequentialExecutor ( )源码实例Demo

下面列出了com.google.common.util.concurrent.MoreExecutors#newSequentialExecutor ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: java-trader   文件: OrderedExecutorImpl.java
@PostConstruct
public void init() {
    executors = new Executor[THREAD_COUNT];
    for(int i=0;i<this.executors.length;i++) {
        executors[i] = MoreExecutors.newSequentialExecutor(executorService);
    }
}
 
源代码2 项目: armeria   文件: ArmeriaServerCall.java
ArmeriaServerCall(HttpHeaders clientHeaders,
                  MethodDescriptor<I, O> method,
                  CompressorRegistry compressorRegistry,
                  DecompressorRegistry decompressorRegistry,
                  HttpResponseWriter res,
                  int maxInboundMessageSizeBytes,
                  int maxOutboundMessageSizeBytes,
                  ServiceRequestContext ctx,
                  SerializationFormat serializationFormat,
                  @Nullable GrpcJsonMarshaller jsonMarshaller,
                  boolean unsafeWrapRequestBuffers,
                  boolean useBlockingTaskExecutor,
                  ResponseHeaders defaultHeaders) {
    requireNonNull(clientHeaders, "clientHeaders");
    this.method = requireNonNull(method, "method");
    this.ctx = requireNonNull(ctx, "ctx");
    this.serializationFormat = requireNonNull(serializationFormat, "serializationFormat");
    this.defaultHeaders = requireNonNull(defaultHeaders, "defaultHeaders");
    messageReader = new HttpStreamReader(
            requireNonNull(decompressorRegistry, "decompressorRegistry"),
            new ArmeriaMessageDeframer(
                    this,
                    maxInboundMessageSizeBytes,
                    ctx.alloc())
                    .decompressor(clientDecompressor(clientHeaders, decompressorRegistry)),
            this);
    messageFramer = new ArmeriaMessageFramer(ctx.alloc(), maxOutboundMessageSizeBytes);
    this.res = requireNonNull(res, "res");
    this.compressorRegistry = requireNonNull(compressorRegistry, "compressorRegistry");
    clientAcceptEncoding =
            Strings.emptyToNull(clientHeaders.get(GrpcHeaderNames.GRPC_ACCEPT_ENCODING));
    marshaller = new GrpcMessageMarshaller<>(ctx.alloc(), serializationFormat, method, jsonMarshaller,
                                             unsafeWrapRequestBuffers);
    this.unsafeWrapRequestBuffers = unsafeWrapRequestBuffers;
    blockingExecutor = useBlockingTaskExecutor ?
                       MoreExecutors.newSequentialExecutor(ctx.blockingTaskExecutor()) : null;

    res.whenComplete().handleAsync((unused, t) -> {
        if (!closeCalled) {
            // Closed by client, not by server.
            cancelled = true;
            try (SafeCloseable ignore = ctx.push()) {
                close(Status.CANCELLED, new Metadata());
            }
        }
        return null;
    }, ctx.eventLoop());
}