On Thu, Oct 18, 2018 at 9:11 AM Michael Selik <michael.se...@gmail.com> wrote: > On Thu, Oct 18, 2018 at 8:35 AM Sean Harrington <seanhar...@gmail.com> wrote: >> Further, let me pivot on my idea of __qualname__...we can use the `id` of >> `func` as the cache key to address your concern, and store this `id` on the >> `task` tuple (i.e. an integer in-lieu of the `func` previously stored there). > > > Possible. Does the Pool keep a reference to the passed function in the main > process? If not, couldn't the garbage collector free that memory location and > a new function could replace it? Then it could have the same qualname and id > in CPython. Edge case, for sure. Worse, it'd be hard to reproduce as it'd be > dependent on the vagaries of memory allocation.
I'm not following this thread closely, but I just wanted to point out that __qualname__ won't necessarily be an attribute of the object if the API accepts any callable. (I happen to be following an issue on the tracker where this came up.) --Chris _______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com