AsynchronousChannelGroup.WithThreadPool(IExecutorService) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Creates an asynchronous channel group with a given thread pool.
[Android.Runtime.Register("withThreadPool", "(Ljava/util/concurrent/ExecutorService;)Ljava/nio/channels/AsynchronousChannelGroup;", "", ApiSince=26)]
public static Java.Nio.Channels.AsynchronousChannelGroup? WithThreadPool (Java.Util.Concurrent.IExecutorService? executor);
[<Android.Runtime.Register("withThreadPool", "(Ljava/util/concurrent/ExecutorService;)Ljava/nio/channels/AsynchronousChannelGroup;", "", ApiSince=26)>]
static member WithThreadPool : Java.Util.Concurrent.IExecutorService -> Java.Nio.Channels.AsynchronousChannelGroup
Parameters
- executor
- IExecutorService
The thread pool for the resulting group
Returns
A new asynchronous channel group
- Attributes
Remarks
Creates an asynchronous channel group with a given thread pool.
The executor
parameter is an ExecutorService
that executes tasks submitted to dispatch completion results for operations initiated on asynchronous channels in the group.
Care should be taken when configuring the executor service. It should support <em>direct handoff</em> or <em>unbounded queuing</em> of submitted tasks, and the thread that invokes the ExecutorService#execute execute
method should never invoke the task directly. An implementation may mandate additional constraints.
The executor is intended to be used exclusively by the resulting asynchronous channel group. Termination of the group results in the orderly ExecutorService#shutdown shutdown
of the executor service. Shutting down the executor service by other means results in unspecified behavior.
The group is created by invoking the AsynchronousChannelProvider#openAsynchronousChannelGroup(ExecutorService,int) openAsynchronousChannelGroup(ExecutorService,int)
method of the system-wide default AsynchronousChannelProvider
object with an initialSize
of 0
.
Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.