Java webengine与spark web服务的并发性

Java webengine与spark web服务的并发性,java,multithreading,concurrency,executorservice,javafx-webengine,Java,Multithreading,Concurrency,Executorservice,Javafx Webengine,我正在尝试创建一个web服务,它可以使用com.ui4j.api.browser.BrowserFactory(JavaFX webview)生成一个爬虫程序,因为getBrowser方法只能返回一个实例,这也是有文档记录的 我正在尝试在不同的线程中同时运行此功能,以便一次生成多个浏览器 他们还遵循: 但我不明白如何动态添加条件/动态创建可调用项,因为所有这些代码都运行在由JavaSpark 这是我的代码: import static spark.Spark.get; import java.

我正在尝试创建一个web服务,它可以使用
com.ui4j.api.browser.BrowserFactory
(JavaFX webview)生成一个爬虫程序,因为
getBrowser
方法只能返回一个实例,这也是有文档记录的

我正在尝试在不同的线程中同时运行此功能,以便一次生成多个浏览器

他们还遵循:

但我不明白如何动态添加条件/动态创建可调用项,因为所有这些代码都运行在由
JavaSpark

这是我的代码:

import static spark.Spark.get;

import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;

public class Runcrawl {


    public static void main(String[] args) {

        get("/crawl/:keyword", (req, res) - > {
            ExecutorService executor = Executors.newWorkStealingPool(3);
            return executor.submit(() - > {
                String threadName = Thread.currentThread().getName();
                System.out.println("threadName : " + threadName);
                return launchBrowser();
            }).get();
        });

    }
}
现在我使用的是
executor.submit().get()
,它运行良好,但会阻塞线程,因此不允许我启动单独的浏览器

谢谢,任何帮助都将不胜感激