RSS feed
[root]
/
util
/
code
/
TI Python
/
scripts
/
document
login:
password:
title search:
Search this site
Enter your search terms
Web
www.carfield.com.hk
Submit search form
Prev
Next
Wed Dec 26 16:00:00 GMT 2001
Synchronization
#: util:Synchronization.py '''Simple emulation of Java's 'synchronized' keyword, from Peter Norvig.''' import threading def synchronized(method): def f(*args): self = args[0] self.mutex.acquire(); # print method.__name__, 'acquired' try: return apply(method, args) finally: self.mutex.release(); # print method.__name__, 'released' return f def synchronize(klass, names=None): """Synchronize methods in the given class. Only synchronize the methods whose names are given, or all methods if names=None.""" if type(names)==type(''): names = names.split() for (name, val) in klass.__dict__.items(): if callable(val) and name != '__init__' and \ (names == None or name in names): # print "synchronizing", name klass.__dict__[name] = synchronized(val) # You can create your own self.mutex, or inherit # from this class: class Synchronization: def __init__(self): self.mutex = threading.RLock() #:~
(google search)
(amazon search)
1
2
3
second
download zip of files only
Prev
Next