With relation to SPR-12358, as Juergen Hoeller and Sébastien Deleuze commented in the Spring JIRA, adding a special delay time in the executor looks enough. We can think that the thread in the AsyncTaskExecutor will call callback method. But if a developer puts pretty much time spending code block between AsyncTaskExecutor's submitListenable and ListenableFuture's addCallback, that will not be enough. It might be the same problem. So I slightly changed ListenableFutureCallbackRegistry.java in order to run a callback in a new thread when AsyncTask is already finished. At least this will prevent being blocked.
Issue: SPR-12358
I have signed and agree to the terms of the SpringSource Individual Contributor License Agreement.
Comment From: pivotal-issuemaster
@MoonJongMin Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.
Comment From: pivotal-cla
@MoonJongMin Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.
Comment From: snicoll
@MoonJongMin thanks for the PR but we can't create new threads as you suggest in a class of the core framework. If you're still experiencing this issue, please create a new issue with a small sample that we can run ourselves. That will help us debug and find a more appropriate place to try to fix the issue you're experiencing.