This attempts to describe the situation in the current head, * scheme-scheduling.texi (Threads): Note Guile uses POSIX threads, for concurrency and preemption. (C level thread interface): Note periodic libguile call required for C code in threads, add commented out reminders for SCM_TICK and guile-mode, for when those features are ready. Incidentally, I'd be a bit tempted at some stage to have mutexes and condition variables in sections of their own, with scheme and C described together. Which might leave "C level thread interface" as just the C level thread creation and rules for operating.