Message282409
Hi Armin,
> is it still necessary to modify weakref.py so much, then?
Not sure. I'll take a look again. Modifying __len__() at least is necessary, as the previous version took into account the length of _pending_removals (and could therefore return wrong results). I'm inclined to be a bit defensive here.
> The C function would simply call PyObject_GetItem() and PyObject_DelItem()---without releasing the GIL in the middle.
If you implement it like that, and the dictionary has non-trivial keys with a user-defined __hash__, then the GIL can be released at the beginning of PyObject_DelItem(). |
|
Date |
User |
Action |
Args |
2016-12-05 10:22:08 | pitrou | set | recipients:
+ pitrou, tim.peters, fdrake, arigo, serhiy.storchaka |
2016-12-05 10:22:08 | pitrou | set | messageid: <1480933328.48.0.229436939002.issue28427@psf.upfronthosting.co.za> |
2016-12-05 10:22:08 | pitrou | link | issue28427 messages |
2016-12-05 10:22:08 | pitrou | create | |
|