[Python-Dev] Release or not release the GIL (original) (raw)

Antoine Pitrou solipsis at pitrou.net
Fri Feb 1 16:22:42 CET 2013


Le Fri, 1 Feb 2013 15🔞39 +0100, "Amaury Forgeot d'Arc" <amauryfa at gmail.com> a écrit :

2013/2/1 Charles-François Natali <cf.natali at gmail.com>

> >> dup2(oldfd, newfd) closes oldfd. > > > > No, it doesn't close oldfd. > > > > It may close newfd if it was already open. > > (I guess that's what he meant). > > Anyway, only dup2() should probably release the GIL. > > One reasonable heuristic is to check the man page: if the syscall > can return EINTR, then the GIL should be released.

Should the call be retried in the EINTR case? (After a PyErrCheckSignals)

I don't think we want to retry low-level system calls (but I'm not sure we're currently consistent in that regard).

Regards

Antoine.



More information about the Python-Dev mailing list