The documentation of ofThread is pretty decent and there should be examples out there
http://www.openframeworks.cc/documentation/utils/ofThread.html
I would recommend against using audio out as your separate thread though it does get polled much more often. It will be better to make your own thread and then you can have it do more robust functions and signal events like a change in value etc...
Your question about variable read writes is why mutexes exist so that such a case does not happen