event loop vs threads
Terry Reedy
tjreedy at udel.edu
Tue Sep 27 16:48:06 EDT 2016
On 9/27/2016 12:01 AM, srinivas devaki wrote:
> how does Python switch execution and maintain context i.e function stack
> etc,.. for co-routines and why is it less costly than switching threads
> which almost do the same, and both are handled by Python Interpreter
> itself(event loop for co-routines and GIL scheduling for threading), so
> where does the extra overhead for threads come from ?
Thread switching is done by the interpreter, either when a thread calls
a blocking i/o function or when a time slice expires. You can read the
asyncio.base_event code and other submodules for details on how asyncio
works.
--
Terry Jan Reedy
More information about the Python-list
mailing list