"Thomas Jollans" <tho...@jollybox.de> wrote in message news:mailman.36.1282762569.29448.python-l...@python.org...
I expect that it gives away the GIL to call the resident write() function, to
allow other threads to run while it's sitting there, blocking. I haven't
looked at the code, so maybe it doesn't hand over the GIL, but if it doesn't, I'd consider that a bug rather than a feature: the GIL shouldn't be abused as
some kind of local mutex, and only gets in the way anyway.

Ah, I expect you're correct. I'm still largely a Python newbie, and only know enough about things like the GIL to get myself into trouble.

Speaking of the GIL, you shouldn't rely on it being there. Ever. It's a
necessary evil, or it appears to be necessary. but nobody likes it and if
somebody finds a good way to kick it out then that will happen.

OK, but presumably I can't know whether or not someone who wrote a library like pySerial relied on it or not. Although I suppose this is really a documentation bug -- pySerial's documentation doesn't talk about multi-threaded access directly, although their "minicom" example does demonstrate it in action.

Thanks for the help,
---Joel

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to