type=page
status=published
title=list-managed-thread-factories
next=list-message-security-providers.html
prev=list-managed-scheduled-executor-services.html
~~~~~~

= list-managed-thread-factories

[[list-managed-thread-factories-1]][[GSRFM875]][[list-managed-thread-factories]]

== list-managed-thread-factories

Lists managed thread factory resources

[[sthref1669]]

=== Synopsis

[source]
----
asadmin [asadmin-options] list-managed-thread-factories [--help]
[target]
----

[[sthref1670]]

=== Description

The `list-managed-thread-factories` subcommand lists managed thread
factory resources.

This subcommand is supported in remote mode only.

[[sthref1671]]

=== Options

asadmin-options::
  Options for the `asadmin` utility. For information about these
  options, see the link:asadmin.html#asadmin-1m[`asadmin`(1M)] help page.
`--help`::
`-?`::
  Displays the help text for the subcommand.

[[sthref1672]]

=== Operands

target::
  Specifies the target for which managed thread factory resources are to
  be listed. Valid targets are:

  `server`;;
    Lists the resources on the default server instance. This is the
    default value.
  `domain`;;
    Lists the resources for the domain.
  cluster-name;;
    Lists the resources on all server instances in the specified
    cluster.
  instance-name;;
    Lists the resources on a specified server instance.

[[sthref1673]]

=== Examples

[[GSRFM876]][[sthref1674]]

==== Example 1   Listing Managed Thread Factory Resources

This example lists managed thread factory resources on the default
server instance.

[source]
----
asadmin> list-managed-thread-factories
concurrent/__defaultManagedThreadFactory
concurrent/myThreadFactory1
concurrent/myThreadFactory2
Command list-managed-thread-factories executed successfully.
----

[[sthref1675]]

=== Exit Status

0::
  subcommand executed successfully
1::
  error in executing the subcommand

[[sthref1676]]

=== See Also

link:asadmin.html#asadmin-1m[`asadmin`(1M)]

link:create-managed-thread-factory.html#create-managed-thread-factory-1[`create-managed-thread-factory`(1)],
link:delete-managed-thread-factory.html#delete-managed-thread-factory-1[`delete-managed-thread-factory`(1)]


