Helmut Jarausch wrote: > 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).
Maybe you have the reload_modules* option switched on? That would defeat Python's caching in order to ease development. (*) see http://karrigell.sourceforge.net/en/configuration.htm Peter -- http://mail.python.org/mailman/listinfo/python-list