Python Condicional "With" Lock Design

Pregunta rápida, con suerte ...

Estoy tratando de hacer un bloqueo compartido usando declaraciones

def someMethod(self, hasLock = False):
     with self.my_lock:
         self.somethingElse(hasLock=True)


def somethingElse(self, hasLock = False):
    #I want this to be conditional...
    with self.my_lock:
          print 'i hate hello worlds"

¿Eso tiene sentido? Básicamente, solo quiero hacer con IF * aún no tengo el bloqueo ..

Además de poder lograr esto, ¿es un mal diseño? ¿Debo adquirir / liberarme yo mismo?

Esta parece una de esas preguntas de pedo cerebral ...

Respuestas a la pregunta(5)

Su respuesta a la pregunta