java - ThreadPoolExecutor 处理 Grails 中的高内存任务?

标签 java spring servlets grails grails-2.0

我有一些工作需要为我的应用程序处理图像。它们占用大量堆内存。因此,我想限制图像处理任务的数量或以某种方式对它们进行排队。

我还使用GPars处理图像处理,但按照我的方法,有时会同时打开许多工作线程。

如何在 Grails 中使用 ThreadPoolExecutor 来正确完成此任务?

最佳答案

我认为你可以使用 GParsExecutorsPool 来做到这一点

    GParsExecutorsPool.withPool() {
    Closure longLastingCalculation = {calculate()}
    Closure fastCalculation = longLastingCalculation.async()  //create a new closure, which starts the original closure on a thread pool
    Future result=fastCalculation()                           //returns almost immediately
    //do stuff while calculation performs …
    println result.get()
}

有关更多详细信息,请查看此链接: Use of ThreadPool - the Java Executors' based concurrent collection processor

关于java - ThreadPoolExecutor 处理 Grails 中的高内存任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18451605/

相关文章:

java - GWT 的 gwt-comet 的基本使用

java - 64 位 JVM 无法为对象堆保留足够的空间

java - 最坏情况运行时间 Big O

java - Eclipse 总是希望代码位于 com\folder 而不是 com.folder

spring - 在 Spring 配置文件中使用 bean id 和 name 的区别

java - Spring boot - Controller 捕获所有 URL

java - Spring Integration 消息驱动 channel 适配器标签不支持 bean 名称?

java - 将servlet发送回Java页面或返回html页面

java - Simile Timeline 直接打开时显示,但通过 servlet 打开时不显示

java - 使用 scriptData 上传 uploadSettings 不起作用