Error occasionally thrown on long running tasks - SqlServerDistributedLock Exception

Hangfire.SqlServer.SqlServerDistributedLockException

We have some long running Hangfire tasks, that occasionally throw the following error:

Could not place a lock on the resource 'HangFire:ReloadDataCache.Execute': The lock request timed out.

Hangfire.SqlServer.SqlServerDistributedLockException: Could not place a lock on the resource 'HangFire:ReloadDataCache.Execute': The lock request timed out.
   at Hangfire.SqlServer.SqlServerDistributedLock..ctor(String resource, TimeSpan timeout, IDbConnection connection)
   at Hangfire.SqlServer.SqlServerConnection.AcquireDistributedLock(String resource, TimeSpan timeout)
   at Hangfire.DisableConcurrentExecutionAttribute.OnPerforming(PerformingContext filterContext)
   at Hangfire.Server.DefaultJobPerformanceProcess.InvokePerformFilter(IServerFilter filter, PerformingContext preContext, Func`1 continuation)

Does anyone know what may be causing this?