Threaded objects form the basis of pthreads ability to execute user code asynchronously;
they expose and include synchronization methods and various useful interfaces.
Threaded objects, most importantly, provide implicit safety for the programmer;
all operations on the object scope are safe.