type=page
status=published
title=delete-managed-scheduled-executor-service
next=delete-managed-thread-factory.html
prev=delete-managed-executor-service.html
~~~~~~

= delete-managed-scheduled-executor-service

[[delete-managed-scheduled-executor-service-1]][[GSRFM850]][[delete-managed-scheduled-executor-service]]

== delete-managed-scheduled-executor-service

Removes a managed scheduled executor service resource with the specified
JNDI name

[[sthref858]]

=== Synopsis

[source]
----
asadmin [asadmin-options] delete-managed-scheduled-executor-service [--help]
[--target target]
managed_scheduled_executor_service_name
----

[[sthref859]]

=== Description

The `delete-managed-scheduled-executor-service` subcommand removes a
managed scheduled executor service resource with the specified JNDI
name.

This subcommand is supported in remote mode only.

[[sthref860]]

=== 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.
`--target`::
  Specifies the target from which you are deleting the resource. Valid
  targets are:

  `server`;;
    Deletes the resource from the default server instance. This is the
    default value.
  `domain`;;
    Deletes the resource from the domain.
  cluster_name;;
    Deletes the resource from every server instance in the specified
    cluster.
  instance_name;;
    Deletes the resource from the specified server instance.

[[sthref861]]

=== Operands

managed_scheduled_executor_service_name::
  The JNDI name of the resource to be deleted.

[[sthref862]]

=== Examples

[[GSRFM851]][[sthref863]]

==== Example 1   Deleting a Managed Scheduled Executor Service Resource

This example deletes the managed scheduled executor service resource
named `concurrent/myScheduledExecutor`.

[source]
----
asadmin> delete-managed-scheduled-executor-service concurrent/myScheduledExecutor
Managed scheduled executor service concurrent/myScheduledExecutor deleted successfully.
Command delete-managed-scheduled-executor-service executed successfully.
----

[[sthref864]]

=== Exit Status

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

[[sthref865]]

=== See Also

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

link:create-managed-scheduled-executor-service.html#create-managed-scheduled-executor-service-1[`create-managed-scheduled-executor-service`(1)],
link:list-managed-scheduled-executor-services.html#list-managed-scheduled-executor-services-1[`list-managed-scheduled-executor-services`(1)]


