mirror of
https://github.com/python/cpython.git
synced 2025-08-30 05:35:08 +00:00
Whitespace normalization.
This commit is contained in:
parent
88869f9787
commit
07e99cb774
18 changed files with 1933 additions and 1936 deletions
64
Lib/mutex.py
64
Lib/mutex.py
|
@ -13,39 +13,39 @@ for lock, where a function is called once the lock is aquired.
|
|||
"""
|
||||
|
||||
class mutex:
|
||||
def __init__(self):
|
||||
"""Create a new mutex -- initially unlocked."""
|
||||
self.locked = 0
|
||||
self.queue = []
|
||||
def __init__(self):
|
||||
"""Create a new mutex -- initially unlocked."""
|
||||
self.locked = 0
|
||||
self.queue = []
|
||||
|
||||
def test(self):
|
||||
"""Test the locked bit of the mutex."""
|
||||
return self.locked
|
||||
def test(self):
|
||||
"""Test the locked bit of the mutex."""
|
||||
return self.locked
|
||||
|
||||
def testandset(self):
|
||||
"""Atomic test-and-set -- grab the lock if it is not set,
|
||||
return true if it succeeded."""
|
||||
if not self.locked:
|
||||
self.locked = 1
|
||||
return 1
|
||||
else:
|
||||
return 0
|
||||
def testandset(self):
|
||||
"""Atomic test-and-set -- grab the lock if it is not set,
|
||||
return true if it succeeded."""
|
||||
if not self.locked:
|
||||
self.locked = 1
|
||||
return 1
|
||||
else:
|
||||
return 0
|
||||
|
||||
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))
|
||||
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))
|
||||
|
||||
def unlock(self):
|
||||
"""Unlock a mutex. If the queue is not empty, call the next
|
||||
function with its argument."""
|
||||
if self.queue:
|
||||
function, argument = self.queue[0]
|
||||
del self.queue[0]
|
||||
function(argument)
|
||||
else:
|
||||
self.locked = 0
|
||||
def unlock(self):
|
||||
"""Unlock a mutex. If the queue is not empty, call the next
|
||||
function with its argument."""
|
||||
if self.queue:
|
||||
function, argument = self.queue[0]
|
||||
del self.queue[0]
|
||||
function(argument)
|
||||
else:
|
||||
self.locked = 0
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue