emscripten-core/emscripten

Develop a fully multithreaded C runtime for pthreads.

Open

#3,495 opened on Jun 3, 2015

View on GitHub
 (23 comments) (0 reactions) (0 assignees)C++ (3,519 forks)batch import
help wantedmultithreading

Repository metrics

Stars
 (27,361 stars)
PR merge metrics
 (Avg merge 19d 10h) (147 merged PRs in 30d)

Description

Several functions in the C runtime are currently effectively singlethreaded, because they carry global process specific state in JS code that can't be thread local. Therefore calls to these runtime functions from pthreads are proxied to the main thread. Migrating to use more musl can avoid this issue. Also, investigate creating a fully asm.js -based virtual filesystem to be used when targeting pthreads, so that C file I/O can be naturally multithreaded as well.

Contributor guide