Grails 承诺回调未调用
Grails promise callback not called
我无法执行应使用 Promise onComplete() 调用的回调。
// some service
def initiateDbLoad() {
def p1 = task { dbLoad() }
p1.onComplete { result ->
dbLoadCallback()
}
}
def dbLoad() {
// some long-running process here
}
def dbLoadCallback() {
// I am never called
}
用例是我想在一个单独的线程中启动一个长运行进程。调用线程应该 return,而不是等待线程完成。当 long-运行 过程完成时,我希望它执行回调。这可能吗?或者应该像下面的代码?
def initiateDbLoad() {
def p1 = task {
dbLoad()
dbLoadCallback()
}
}
onComplete
仅在成功时调用。您还必须添加 onError
才能获得实际错误。
我无法执行应使用 Promise onComplete() 调用的回调。
// some service
def initiateDbLoad() {
def p1 = task { dbLoad() }
p1.onComplete { result ->
dbLoadCallback()
}
}
def dbLoad() {
// some long-running process here
}
def dbLoadCallback() {
// I am never called
}
用例是我想在一个单独的线程中启动一个长运行进程。调用线程应该 return,而不是等待线程完成。当 long-运行 过程完成时,我希望它执行回调。这可能吗?或者应该像下面的代码?
def initiateDbLoad() {
def p1 = task {
dbLoad()
dbLoadCallback()
}
}
onComplete
仅在成功时调用。您还必须添加 onError
才能获得实际错误。