39 キャッシュ操作でのタイムアウトの使用

多くのスレッドがCoherenceキャッシュに同時にアクセスすると、Coherenceキャッシュ操作のコール元が共通のロックでブロックされることがあります。このブロックにより、スタック・スレッドが蓄積する可能性があります。これらのスタック・スレッドを回避するために、Coherenceは中断可能なロックを使用し、指定したタイムアウト間隔後に操作を中断できます。タイムアウトAPIを使用することで、ブロック時間が指定のタイムアウト間隔を超えると、ブロック操作を中断し、エラーを発生させることができます。
次に、getCache操作が指定した2分間のタイムアウト間隔より時間がかかる場合に、タイムアウトAPIを使用してこの操作を中断する方法の例を示します。
try (Timeout t = Timeout.after(2, TimeUnit.MINUTES))
     {
     NamedCache cache = CacheFactory.getCache("myCache");
     }
   catch (InterruptedException e)
     {
     // error out getCache() due to timed out.
     }