Connecting Tech Pros Worldwide Forums | Help | Site Map

Re: Python Query: Related to locking a resource in a multithreadedenvironment

Gabriel Genellina
Guest
 
Posts: n/a
#1: Aug 20 '08
En Tue, 19 Aug 2008 15:58:11 -0300, Nils Oliver Kröger <NO_Kroeger@gmx.de>
escribi�:
Quote:
My approach what be to write one class for reading and writing to the
configuration and make that class thread-safe using the RLock.
>
Then you create one and only one instance of this class and let all your
threads use (not import) that one instance.
>
You could achieve that "one and only one" either by having a main
program which creates the instance and pass the reference to each thread
via its __init__ or you implement the Configuration class as a singleton
like this:
>
class Singleton(object): [...]
>Add your methods for accessing as instance methods to this class and get
the same instance of this class in each thread by calling
Singleton.getInstance().
Singleton.getInstance() is so "javaistic"... :)
Actually there is no need for all of that; just define the RLock at the
global scope in a module.
Don't feel bad by using a "global" name - remember that a Python module
acts as a named singleton. Defining an object at module scope is
equivalent to defining an instance attribute in your Singleton class.

--
Gabriel Genellina


Closed Thread