parameters: (self, function, argument)
docstring: Lock a mutex, call the function with supplied argument
          when it is acquired.  If the mutex is already locked, place
          function and argument in the queue.
docstring_summary: Lock a mutex, call the function with supplied argument
          when it is acquired.  If the mutex is already locked, place
          function and argument in the queue.
docstring_tokens: Lock a mutex call the function with supplied argument when it is acquired . If the mutex is already locked place function and argument in the queue .
function: def lock(self, function, argument):
          """Lock a mutex, call the function with supplied argument
          when it is acquired.  If the mutex is already locked, place
          function and argument in the queue."""
          if self.testandset():
              function(argument)
          else:
              self.queue.append((function, argument))
function_tokens: def lock ( self , function , argument ) : if self . testandset ( ) : function ( argument ) else : self . queue . append ( ( function , argument ) )