## com.google.common.util.concurrent
Interface CycleDetectingLockFactory.Policy

All Known Implementing Classes:
  CycleDetectingLockFactory.Policies

Enclosing class:
  CycleDetectingLockFactory

    @Beta
    @ThreadSafe
    public static interface CycleDetectingLockFactory.Policy

Encapsulates the action to be taken when a potential deadlock is encountered. Clients can use one of the predefined `CycleDetectingLockFactory.Policies` or specify a custom implementation. Implementations must be thread-safe.

Since:
  13.0

Method Summary
`void` `handlePotentialDeadlock(CycleDetectingLockFactory.PotentialDeadlockException exception)` Called when a potential deadlock is encountered.

Method Detail

### handlePotentialDeadlock

    void handlePotentialDeadlock(CycleDetectingLockFactory.PotentialDeadlockException exception)

  Called when a potential deadlock is encountered. Implementations can throw the given `exception` and/or execute other desired logic.

  Note that the method will be called even upon an invocation of `tryLock()`. Although `tryLock()` technically recovers from deadlock by eventually timing out, this behavior is chosen based on the assumption that it is the application's wish to prohibit any cyclical lock acquisitions.

Copyright © 2010-2012. All Rights Reserved.