Alexander Sabourenkov wrote:
> Hello.
> 
> I have went and replaced Python threads with explicitly-scheduled
> coroutines using swapcontext() family of functions (basically out of
> frustration with the greenlet).
> 
> I have two questions.
> 
> 1. Is it as dangerous to switch C stacks and not switch PyThreadState as
> I suspect? In particular, how tightly is PyThreadState::frame coupled to
> current C stack?

Off the top of my head, recursion limit checks will definitely go
haywire, and I would expect threading.local() and exception handling to
explode at some point (although the latter depends on what you mean by
"switching C stacks" - if you really are just fiddling the stack pointer
without affecting the thread local heap storage mechanisms, the latter
two should be fine. Still doesn't sound like a good idea though).

Cheers,
Nick.

-- 
Nick Coghlan   |   ncogh...@gmail.com   |   Brisbane, Australia
---------------------------------------------------------------
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to