Multi tasking with C++. Threads or different design?
<p>I've always used scripting languages such as PHP where a page runs, completes running and gives an output. However, I want to do something a little different on C++ where I need to multi thread two tasks.</p>

<p>Firstly, the main thread should run, (let's say) a cpu temperature meter which refresh every 1 second, and the second thread should do something else. (like reading all directories under windows directory.)</p>

<p>With that said;</p>

<ol>
<li><p>Is using threads are my only chance or can I use a different programming concept for this task?</p></li>
<li><p>Especially in gaming, there are loads of things running on the background. For example, AI for NPC's/Monsters, graphic engine, physics engine, player movement, keyboard interaction etc. They work in a single process, so how is it being handled?</p></li>
</ol>
