vanzin commented on a change in pull request #23278: [SPARK-24920][Core] Allow sharing Netty's memory pool allocators URL: https://github.com/apache/spark/pull/23278#discussion_r240774275
########## File path: common/network-common/src/main/java/org/apache/spark/network/util/NettyUtils.java ########## @@ -95,6 +111,38 @@ public static String getRemoteAddress(Channel channel) { return "<unknown remote>"; } + /** + * Returns the default number of threads for both the Netty client and server thread pools. + * If numUsableCores is 0, we will use Runtime get an approximate number of available cores. + */ + public static int defaultNumThreads(int numUsableCores) { + final int availableCores; + if (numUsableCores > 0) { + availableCores = numUsableCores; + } else { + availableCores = Runtime.getRuntime().availableProcessors(); + } + return Math.min(availableCores, MAX_DEFAULT_NETTY_THREADS); + } + + /** + * Returns the lazily created shared pooled ByteBuf allocator for the specified allowCache + * parameter value. + */ + public static synchronized PooledByteBufAllocator getSharedPooledByteBufAllocator( Review comment: What that article talks about was fixed in Java 1.5. Double-checked locking works fine since then. But I think that's overkill here. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services --------------------------------------------------------------------- To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org For additional commands, e-mail: reviews-h...@spark.apache.org