我必须编写一个测试,该测试应该在单独的线程中的本地模式下运行火花查询,并声明该作业输入和输出的结果。
Runnable runnableTask = () -> {
sparkStreamingJob.start();
};
Future<?> future =
executorService.submit(runnableTask );
该测试完成后,我必须针对同一火花流作业启动具有不同配置的另一个测试。为此,我必须停止上面启动的线程并开始一个新线程。
问题是即使我尝试了
executorService.shutdownNow();
future.cancel(true);
流媒体不会停止。请注意,sparkStreaming作业代码无法更改,因此不能使用中断标志,因为它不是循环。
如何停止该特定线程?任何想法? 并且请注意,我已经解决了以上大多数相关问题,但仍然找不到解决方案。因此,如果您标记此重复项,则至少可以详细说明,我们将不胜感激。