improve eventLock