Hmm... I think it's when the program is supposed to read from a memory address that's passed by reference in another register, but the value it gets for the memory to read is not valid. (in use or locked by another program, for example)
My guess is, since this is a multi-threaded program, that there is a certain level of paralellism going on in the execution during shut-down, and soemtimes some memory gets freed or some variables get killed before another thread tries to access it.
I'm not a real programmer, so I don't really know though. |