Skip to content

Improve support for pinning processes

Yorick Peterse requested to merge improve-process-pinning into master

When pinning a process to an OS thread, we now also prevent the corresponding Worker from executing any other processes. This still allows a process to be suspended (e.g. for garbage collection), while preventing another process from running on the OS thread. This makes std::process.pinned more useful for interacting with thread-local storage in C.

Because the new approach results in an OS thread only processing a single process (= the process that was pinned), std::process.pinned should be used carefully.

Fixes #150 (closed)

Merge request reports