AcquireDistributedLock no support for Shared locks

At this moment, AcquireDistributedLock is hard-coded to acquire Exclusive app lock. In out application, we have need to use Shared locks as well. Is there an alternative to AcquireDistributedLock which allows for shared locks, or, if not, is there a possibility to introduce an overloaded method which takes additional LockMode parameter?