Mercurial > slides-fragments
changeset 183:fdb3afaaf6fb
created
| author | 127.0.0.1 |
|---|---|
| date | Mon, 03 Feb 2014 12:44:46 +0100 |
| parents | a84eb85076d5 |
| children | 81d264d6fb57 |
| files | finalizer |
| diffstat | 1 files changed, 21 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/finalizer Mon Feb 03 12:44:46 2014 +0100 @@ -0,0 +1,21 @@ +**Wrong:** +{{{#!python +class Resource(object): + def __init__(self): + self.resource = get_resource() + def __del__(self): + release_resource(self.resource) + +resource = Resource() +... +}}} + +**Better:** +{{{#!python +class Resource(object): + def __enter__(self): + self.resource = get_resource() + return self + def __exit__(self, exc_type, exc_value, traceback): + release_resource(self.resource) +}}} \ No newline at end of file
