At the end of updateChains is some code which writes to the chain file but only in thread 0 (unless you set writeHotChains). Then it writes cov.npy and outputs a log message, without checking that we are in thread 0. Does this mean that file and message will be written simultaneously by every thread? The seems like a bug.
I'm changing this code anyway in my fixes for #10, so I could change this also.