Author: Armin Rigo <[email protected]>
Branch: gc-del
Changeset: r63664:da192ff89252
Date: 2013-04-26 22:01 +0200
http://bitbucket.org/pypy/pypy/changeset/da192ff89252/
Log: Fix _multiprocessing.
diff --git a/pypy/module/_multiprocessing/interp_connection.py
b/pypy/module/_multiprocessing/interp_connection.py
--- a/pypy/module/_multiprocessing/interp_connection.py
+++ b/pypy/module/_multiprocessing/interp_connection.py
@@ -33,8 +33,9 @@
self.flags = flags
self.buffer = lltype.malloc(rffi.CCHARP.TO, self.BUFFER_SIZE,
flavor='raw')
+ self.register_finalizer()
- def __del__(self):
+ def invoke_finalizer(self):
lltype.free(self.buffer, flavor='raw')
try:
self.do_close()
diff --git a/pypy/module/_multiprocessing/interp_semaphore.py
b/pypy/module/_multiprocessing/interp_semaphore.py
--- a/pypy/module/_multiprocessing/interp_semaphore.py
+++ b/pypy/module/_multiprocessing/interp_semaphore.py
@@ -422,6 +422,7 @@
self.kind = kind
self.count = 0
self.maxvalue = maxvalue
+ self.register_finalizer()
def kind_get(self, space):
return space.newint(self.kind)
@@ -505,7 +506,7 @@
def exit(self, space, __args__):
self.release(space)
- def __del__(self):
+ def invoke_finalizer(self):
delete_semaphore(self.handle)
@unwrap_spec(kind=int, value=int, maxvalue=int)
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit