Regex objects store in them the results of the last match; these should be moved somewhere else so the objects can be reused safely.
Fuzzy class stores temporary values in static fields, making it totally thread-unsafe.
There are probably more problems similar to those, those two I found after just a cursory glance into the source code.
Currently, in order to use this library, I had to wrap all operations on Regex objects in a static synchronize block and pull out all the results from them while still inside the lock.
Currently:
Regex
objects store in them the results of the last match; these should be moved somewhere else so the objects can be reused safely.Fuzzy
class stores temporary values in static fields, making it totally thread-unsafe.There are probably more problems similar to those, those two I found after just a cursory glance into the source code.
Currently, in order to use this library, I had to wrap all operations on Regex objects in a static synchronize block and pull out all the results from them while still inside the lock.