dkrikun / eraser

Academic project in program analysis
0 stars 0 forks source link

Synch methods crash #21

Open dkrikun opened 13 years ago

dkrikun commented 13 years ago

Synchronized methods crash with 'using JNIEnv from the wrong thread' which is pretty weird because jni is supposed to be reloaded prior to each use. The crash probably happens on lock comparison. Sometimes, instead of crash the comparison result is just non-deterministic. This is a serious bug, but we can live without synch. methods being checked by eraser in the worst scenario.

dkrikun commented 13 years ago

The bug is not caused by method synch, but rather by threads having not a common lock. Somehow thread operator== is invoked when the universal set is already empty. Should it be invoked?

dkrikun commented 11 years ago

Good bye!