private WorkItem GetWorkItem() { try { return _workItems.Get(); } catch (ObjectPoolDisposingException) { throw new FileBeingDeletedException(); } catch (ObjectPoolMaxLimitReachedException) { throw new Exception("Unable to acquire work item."); } }