Author: Armin Rigo <ar...@tunes.org>
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
pypy-commit@python.org
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to