springboot的异步线程任务如何停止

@Service
public class StreamService {
    @Async
    public Future<Boolean> push(String file, String address, Double size) {
        TransStream.recordPush(file, address, size);
        return new AsyncResult<>(true);
    }
}

我通过接口调用实现了这个方法的异步执行,现在我需要调用另一个接口让这个异步执行的方法立即停止执行,我找了很多办法, 网上也百度不出来好的解决办法,求指点一下我该怎么处理!

1.在创建线程的时候获取线程id
2.根据线程id做对应操作

可以尝试根据标识判断, 获取redis中的key判断是否存在, 如果不存在则直接返回结果达到线程终止的操作. 希望可以帮助到你

利用Redis天然的分布式特性即可,设置个key,终止接口那里获取一下,有就return;

Future类本身不就有cancel方法嘛

试试shutdownNow

设置个中断标识