moved lock to AbstractChannel