Sending locking refactoring (not final)