diff --git a/README.md b/README.md index e6bdd71..7e2722b 100644 --- a/README.md +++ b/README.md @@ -199,12 +199,15 @@ unacceptable. [TIB]: https://en.wikipedia.org/wiki/Win32_Thread_Information_Block [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 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 +[UMS threads]: https://msdn.microsoft.com/en-us/library/windows/desktop/dd627187(v=vs.85).aspx ## License