画像を読み込む場合に、画像ファイルのサムネイルを作成するのですが、そのときに同時に画像のサイズなどの基礎的情報、EXIFなどの情報、さらに後に画像での色検索などに使うために色情報を取得しています。
サムネイルを作成するのは非常に長く重い処理になりますので、現状でもサムネイル読み込み処理はスレッドを1つ使用しています。それでも、色情報の取得 (といっても現在のところはRGB色空間上の3次元ヒストグラムをとってくるだけです) には多少時間がかかりますし、EXIF情報の取得なども同様です。
とりあえず現状でもDBコネクションの再利用などは行うようにしていますが、それでもまだまだ改善の余地はあります。処理速度を改善するにはボトルネックを最適化すればよいのですが、とりあえずスレッドでもう少し処理を分割してみることを検討してみます。