Wikipedia is a good place to start:
<url:
https://en.wikipedia.org/wiki/Thread_(computing)>
In my student days I learned about threading, except we didn't call it
treading back then, by implementing time-slice threading on a
single-board computer. Our task was to make a home control system that
could manage the lights and heating pretty much automatically. As I
recall the single board computer used a Z80 processor and we developed
the software using HP64000 workstations, in Pascal and assembly.
I think you can learn a lot by doing roughly the same, except with much
more modern hardware and software. There are two main routes:
* Use a simulation of an old computer. I think a DOSBox comes pretty
close to reality. You can run old PC programs in a DOSBox.
* Use an Arduino or similar. I do not have personal experience with it
but I know it's pretty cheap and does support C++. What I don't know is
if you can take full charge of the beast to e.g. implement threading.
Cheers & hth.,
- Alf