On Fri, 19 Aug 2016 16:46:16 -0500
Zev Weiss <z...@bewilderbeest.net> wrote:

> I'm not sure I understand -- the first patch in my series just removes the 
> global dfa variable and instead passes it as a parameter.  This alone doesn't 
> make the whole thing thread-safe, it's just a first step along the way.  With 
> the whole series applied though I believe everything should be thread-safe 
> (for example, lexptr is moved into a sub-struct of struct dfa in the second 
> patch in the series).
> 
> Is there some non-thread-safe code that would remain after applying all six 
> patches in the series?

Hi Zev,

Thanks for replying.  I say a reverse thing.

I believe that there is no problem if only dfaexec() is thread safe.  In
other words, I think that variables that we must really move to support
multipthread are eolbyte, sbit and letters, newline only which depend
on eolbyte, and mbrtowc_cache[] and never_trail should be changed as the
value does not changed by other thread at running dfaexec() by marking
already set, and we can leave other static and global as syntax etc.
It will bring us to the saving of memory albeit only slightly.

Thanks,
Norihiro




Reply via email to