Iは注入JDBCTemplate
インスタンスを有し、コードは基本的にSpring 4.1.6 JdbcTemplateブロッキングとシンクロナス?
private JdbcTemplate template;
public OutputType getOutput(InputType input) {
CallType call = new CallType(input);
CallbackType callback = new CallbackType(input);
OutputType output = (OutputType) template.execute(call, callback);
...
}
を実行私は実際にデータベースに接続し、結果を取得execute
方法を想定します。しかし、ドキュメントからコントロールフローがどのように機能するか調べるのは難しいです。
execute
からの応答はブロックされています(スレッドはデータベースの応答を待っている間にCPUコア全体を占有していますか)。それは同期していますが、ブロックしていません(つまり、スレッドはスリープしています/応答が準備完了するまでスケジュールされていません)。それは非同期ですか(execute
はすぐに返されますが、出力は不完全です/すべてのデータベース処理ロジックがコールバックにあります)?
私はいくつかの異なるデータベースを使用していますので、JdbcTemplateで実際に何が起こっているのかは不明です。私の用語が間違っている場合は、私に知らせてください。ありがとう!