double import protection - how to ?
Helmut Jarausch
jarausch at skynet.be
Sat Nov 29 10:40:03 EST 2008
Peter Otten wrote:
> Helmut Jarausch wrote:
>
>> I have a module which gets imported at several different places
>> not all of which are under my control.
>>
>> How can I achieve that all/some statements within that module
>> get executed only at the very first import?
>
> What you describe is Python's default behaviour. A module is executed once
> and then cached in sys.modules. The second import is then just a cache
> lookup.
>
> This may only fail if a module is imported under different names, typically
> when you have directory in sys.path that is part of a package, or when you
> import the main script.
>
> Peter
Thanks Steven, thanks Peter.
Then it's a problem with a problem with a webserver written in Python (Karrigell-3.0)
and probably related to multi-threading (the statements in my module get definitely
executed more than once).
Thanks for your help,
Helmut.
--
Helmut Jarausch
Lehrstuhl fuer Numerische Mathematik
RWTH - Aachen University
D 52056 Aachen, Germany
More information about the Python-list
mailing list