• Status Closed
  • Percent Complete
  • Task Type Patches
  • Category Operating System/Drivers
  • Assigned To No-one
  • Operating System All players
  • Severity Low
  • Priority Very Low
  • Reported Version Release 3.7.1
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Rockbox
Opened by kugel. - 2010-12-05
Last edited by kugel. - 2011-02-18

FS#11793 - Implement threading support for PC

This patch adds load_/store_context for PC platforms to enable us to use our own threading library.

With this patch we can finally simulate our own cooperative threading in the simulator and get rid of the somewhat hacky SDL thread implementation.

For unix platforms I use make/swapcontext which is widely available; for win32 targets Fibers are used (available since win2k). The swapcontext implementation even allows us to check stack usage, although the stack usage on a PC is higher than on target so it might not be overly useful.

tools/configure probes swapcontext support and falls back to the SDL thread if it’s not available; win32 builds always use the Fibers.

Tested with fuze simulator and mingw/wine so far.

Closed by  kugel.
2011-02-18 22:48
Reason for closing:  Accepted
Additional comments about closing:  

r29327, using a different mechanism on unix.


Available keyboard shortcuts


Task Details

Task Editing