[Python-Dev] GIL required for _all_ Python calls?

James Y Knight foom at fuhm.net
Thu Jan 7 21:36:37 CET 2010


On Jan 7, 2010, at 3:27 PM, Martin v. Löwis wrote:

>> I've been wondering whether it's possible to release the GIL in the
>> regex engine during matching.
>
> I don't think that's possible. The regex engine can also operate on
> objects whose representation may move in memory when you don't hold
> the GIL (e.g. buffers that get mutated). Even if they stay in place -
> if their contents changes, regex results may be confusing.

It seems probably worthwhile to optimize for the common case of using  
the regexp engine on an immutable object of type "str" or "bytes", and  
allow releasing the GIL in *that* case, even if you have to keep it  
for the general case.

James


More information about the Python-Dev mailing list