java - 如何在Spring Boot中当前运行的线程上运行@schedule

标签 java spring-boot scheduled-tasks

我们有一个方法,我想在一定时间间隔后在当前线程中运行。

如果我在 Spring Boot 中使用 @scheduled,它可能会也可能不会在不同的线程上运行该方法。我们如何在同一个线程池上运行这个方法。

我们需要它在一段时间后检查 TCP 客户端连接是否已连接,如果没有连接,我们需要关闭连接。客户端未启用保活消息。我们不能改变客户。客户端不断发送数据。如果我们不关闭连接,连接数就会不断增加。

java中有类似的东西吗?

我尝试了 TimerTask 和 Taskscheduler,但两者都在单独的线程上运行。

PS:我是编写调度程序的新手。

最佳答案

尝试使用

Thread.sleep()

一段时间后,您可以在 sleep 时间后检查TCP 连接代码

关于java - 如何在Spring Boot中当前运行的线程上运行@schedule,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57752988/

相关文章:

java - 如何使用 Java 创建带有表单控件的 Excel 文件?

java - Git push 没有出现在 Github 中

java - 有没有办法在 JPA 存储库中的 @Query 注释中使用常量(EnumType Ordinal)值?

java - 在 Spring Security 中使用 UserDetails 实现登录不起作用

Ruby 在 Windows 任务调度程序中的行为不同

java - 传递字符串时 JNI 和 Java 命名约定重要吗

java - 运行 ping federate 无代理示例应用程序时出错

使用 Spring Boot 的 Spring Data Rest 和 spring-data-rest-hal-browser 集成

Node.js,基于日期时间的提醒

c# - TaskCreationOptions.LongRunning 选项和 ThreadPool