I think I have it avoided. I was trying to use a singleton to cache some data that should not change often (if ever at all), and in the module, I create an instance of the singleton class.
I don't know the cause yet, but that seems to be the cause. If I use module variables to cache the data, there are no crashes. I wish I knew *why*, but SEGVs in multithreaded Python programs are not very easy to debug.
I think I have it avoided. I was trying to use a singleton to cache some data that should not change often (if ever at all), and in the module, I create an instance of the singleton class.
I don't know the cause yet, but that seems to be the cause. If I use module variables to cache the data, there are no crashes. I wish I knew *why*, but SEGVs in multithreaded Python programs are not very easy to debug.