我如何在 Cloud Task API 中安排任务?

问题描述

我有一个要求,我需要在任务创建 540 秒(即 9 分钟)后安排(即执行)任务。

在完成某些步骤后如何安排任务?

我正在使用 Java。

这是我的代码

public static void createTask(String projectId,String queueName,String location,String payload,String url,int timeDelayInSeconds) throws IOException {

    // [START cloud_tasks_appengine_create_task]
    // Instantiates a client.
    try (CloudTasksClient client = CloudTasksClient.create()) {

        // Construct the fully qualified queue name.
        String queuePath = QueueName.of(projectId,location,queueName).toString();
        OidcToken.Builder oidcTokenBuilder =
                  OidcToken.newBuilder().setServiceAccountEmail(GlobalConfig.TasksAndSchedulingUser);

        // Construct the task body using HTTP Request
        Task.Builder taskBuilder = Task.newBuilder().setHttpRequest(
                HttpRequest.newBuilder().setBody(ByteString.copyFrom(payload,Charset.defaultCharset())).setUrl(url)
                        .setHttpMethod(HttpMethod.POST)
                        .setoidcToken(oidcTokenBuilder)
                        .build())
                .setScheduleTime(Timestamp.newBuilder()
                        .setSeconds(Instant.Now(Clock.systemUTC()).plusSeconds(timeDelayInSeconds).getEpochSecond()));

        // Send create task request.
        Task task = client.createTask(queuePath,taskBuilder.build());
        logger.info("Task created: " + task.getName());
    }
    // [END cloud_tasks_appengine_create_task]
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)