added a multithreaded test case

A number of threads serialize the same data, while the test function
accesses the original in different ways (prone to blackholing).
Test runs with 10 threads by default, which is enough to trigger
some blackhole exceptions (the duplicate function will retry).