From 992543872a5fc1da197fb2b9441821943cb1820f Mon Sep 17 00:00:00 2001 From: DanB Date: Thu, 13 Oct 2016 10:32:58 +0200 Subject: [PATCH] Guardian - avoid using defer to speed up a bit --- engine/guardian.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/engine/guardian.go b/engine/guardian.go index dfc33a121..716d3aaec 100644 --- a/engine/guardian.go +++ b/engine/guardian.go @@ -83,7 +83,6 @@ func (guard *GuardianLock) unlockItems(itmLocks []*itemLock) { func (guard *GuardianLock) Guard(handler func() (interface{}, error), timeout time.Duration, lockIDs ...string) (reply interface{}, err error) { itmLocks := guard.lockItems(lockIDs) - defer guard.unlockItems(itmLocks) rplyChan := make(chan interface{}) errChan := make(chan error) @@ -109,6 +108,7 @@ func (guard *GuardianLock) Guard(handler func() (interface{}, error), timeout ti } } + guard.unlockItems(itmLocks) return }