grails async bootstrap

时间:2012-06-18 07:26:43

标签: grails bootstrapping

是否可以在grails引导程序类中异步使用服务? 我试图在grails-2.0.4和grails-executor-plugin中执行以下操作,但只显示第一条日志消息:

class BootStrap {

def myService

def init = { servletContext ->

    log.info("Bootstrapping")

    runAsync {
        log.info("Doing myService async ")
        myService.doSomething()
    }

}

没有错误消息,只是第二个日志语句没有输出。 非常感谢提前!

1 个答案:

答案 0 :(得分:2)

删除runAsync关闭 - 它不适合它。您可以在此处针对不同的环境使用productiondevelopment等闭包:

class BootStrap {

def myService

def init = { servletContext ->
    log.info("Bootstrapping")
    development {
        log.info("Doing myService async ")
        myService.doSomething()
    }
}

class MyService {
    def doSomething() {
        runAsync {
            // executed asynchronously
        }
    }
}