Tips/guidance for identifying the source of a deadlock when multithreading?

I suspect that my Julia package, Omniscape.jl, is running into a deadlock when testing on Windows in Julia 1.3 (everything passes in 1.2) in Travis and Appveyor. Basically, it just hangs a few dozen iterations into a @threads for loop. This never happens when parallel processing is not enabled.

Tests pass locally, so I think it has to do with the architecture of the VMs, and debugging has therefore been tricky for me.

I’m wondering if anyone might have some advice for me as I try to identify what might be going on.

The threaded for loop is here, and the function it calls is here, fwiw.

Thanks for any help!

- Vincent