# CronDelete

取消之前通过 `CronCreate` 调度的定时任务，立即从内存会话存储中将其移除。若任务已被自动删除（单次任务触发后自动移除，周期性任务在 7 天后自动过期），则此操作无效。

## 何时使用

- 用户要求在 7 天自动过期前停止某个周期性定时任务。
- 单次任务不再需要，希望在触发前将其取消。
- 需要修改现有任务的调度表达式——先用 `CronDelete` 删除，再用 `CronCreate` 以新表达式重新创建。
- 清理多个过期任务，保持会话存储整洁。

## 参数

- `id`（string，必填）：`CronCreate` 创建任务时返回的任务 ID。该值必须完全匹配，不支持模糊查找或按名称查找。

## 示例

### 示例 1：取消正在运行的周期性任务

之前创建了一个 ID 为 `"cron_abc123"` 的周期性任务，用户要求停止它。

```
CronDelete({ id: "cron_abc123" })
```

该任务从会话存储中移除，不会再次触发。

### 示例 2：在触发前移除过期的单次任务

一个 ID 为 `"cron_xyz789"` 的单次任务被调度为 30 分钟后运行，但用户决定不再需要它。

```
CronDelete({ id: "cron_xyz789" })
```

任务被取消，原定触发时间到达时不会执行任何操作。

## 注意事项

- `id` 必须来自 `CronCreate` 的返回值。无法通过描述或回调查找任务——如果可能需要取消，请提前保存 ID。
- 如果任务已被自动删除（作为单次任务触发，或达到 7 天周期过期），使用该 ID 调用 `CronDelete` 为无操作，不会产生错误。
- `CronDelete` 仅影响当前内存会话。如果运行时不跨重启持久化定时任务状态，则无论是否调用 `CronDelete`，重启后任务均会丢失。
- 没有批量删除操作，需使用各自的 `id` 逐一取消每个任务。
