Linked by Thom Holwerda on Sun 18th Jan 2009 11:16 UTC, submitted by anonymous
General Unix Protothreads are a type of extremely lightweight threads - each protothread requires only two bytes of memory - that are usually used for embedded firmware programming, where memory is at a premium. Protothreads combine the low overhead with event-driven programming with the algorithmic clarity of threaded programming.
Thread beginning with comment 344190
To read all comments associated with this story, please click here.
But it is...stackless.
by axilmar on Sun 18th Jan 2009 13:49 UTC
axilmar
Member since:
2006-03-20

The stackless design means that the local context is not preserved between thread switches, and therefore the solution does not equal real threads.

Reply Score: 2

RE: But it is...stackless.
by adkilla on Sun 18th Jan 2009 15:05 in reply to "But it is...stackless."
adkilla Member since:
2005-07-07

Hmm, reminds me of a similar design in Stackless Python:
http://zope.stackless.com/about/sdocument_view

Stackless Python is an enhanced version of the Python programming language. It allows programmers to reap the benefits of thread-based programming without the performance and complexity problems associated with conventional threads. The microthreads that Stackless adds to Python are a cheap and lightweight convenience which can if used properly, give the following benefits:

* Improved program structure.
* More readable code.
* Increased programmer productivity.

Reply Parent Score: 1