Historically, OCaml has been providing two ways to write threaded program:
- via plain system threads, which is what most people have been using
- via an alternative implementation of
Condition, … where all threads where running on the same system thread and IOs where multiplexed using a select loop. This is similar to what libraries such as
Async do, except without the monad
The second way was known under the name “vmthreads”. It wasn’t very well known anymore and wasn’t used very much. Additionally, it was a lot of work to maintain. Indeed, it required to maintain a parallel implementation of many modules. So we decided to deprecate it.
In practice, the majority of users can ignore this. In particular, people who didn’t know about vmthreads can safely ignore this. The Thread library using system thread is still present and maintained.