provided the original insight on how to make inside-out objects thread-safe in Threads and fork and CLONE, oh my!
threads::shared provides the capability to share variables between threads such that changing the value in one thread makes that change visible in another thread. Object::InsideOut is unique among inside-out object support modules (and, to my knowledge, all other object support modules, as well) in providing support for threads::shared, thus giving you the capability to share objects between threads. As for how to do it, you'd have to look at the module's code to see how. It is not a trivial process.
Remember: There's always one more bug.