Clarify UMS threads

fix #32
pull/1/head
Peter Atashian 2016-08-31 11:11:54 -04:00 committed by edef
parent a733290359
commit 28c12a5ec5
1 changed files with 5 additions and 2 deletions

View File

@ -199,12 +199,15 @@ unacceptable.
[TIB]: https://en.wikipedia.org/wiki/Win32_Thread_Information_Block [TIB]: https://en.wikipedia.org/wiki/Win32_Thread_Information_Block
[tibfail]: https://svn.boost.org/trac/boost/ticket/8544 [tibfail]: https://svn.boost.org/trac/boost/ticket/8544
The only supported way to implement user-mode context switching on Windows is to use [fibers][]. The only supported way to implement user-mode context switching on Windows is [fibers][].
There are no reasons the safe abstractions provided by libfringe could not be implemented on top There are no reasons the safe abstractions provided by libfringe could not be implemented on top
of that; it is simply not yet done. This should be straightforward and an implementation is of that; it is simply not yet done. This should be straightforward and an implementation is
welcome. welcome. Note that while [UMS threads][] are capable of providing user-mode context switching,
they involve managing scheduler threads to run UMS threads on, which is incompatible with
libfringe's design.
[fibers]: https://msdn.microsoft.com/en-us/library/windows/desktop/ms682661(v=vs.85).aspx [fibers]: https://msdn.microsoft.com/en-us/library/windows/desktop/ms682661(v=vs.85).aspx
[UMS threads]: https://msdn.microsoft.com/en-us/library/windows/desktop/dd627187(v=vs.85).aspx
## License ## License