|
From: | Kevin Atkinson |
Subject: | Re: [Aspell-user] Thread Safety Question |
Date: | Thu, 20 Oct 2005 04:43:47 -0600 (MDT) |
On Wed, 19 Oct 2005, Jake Goulding wrote:
Is the current version (0.60.3) thread safe? Browsing the manual for aspell has these two relvant sections: 6.1.4 Notes About Thread Safety Aspell should be thread safe, when used properly, as long as the underlying compiler, C and C++ library is thread safe. Aspell objects, including the AspellSpeller class, should not be used by multiple threads unless they are protected by locks or it is only accessed by read-only methods. A method is read-only only if a |const| object is passed in. Many methods that seam to be read-only are not because they may store state information in the object.
I said "should" since I have not formally verified Aspell to be thread safe in the areas I talk about. However, I never had any bug reports in this area.
D.1.1 Things that need to be done * Make Aspell *Thread safe*. Even though Aspell itself is not multi-threaded I would like it to be thread safe so that it can be used by multi-threaded programs. There are several areas of Aspell that that are potently thread unsafe (such as accessing a global pool) and several classes which have the potential of being used by more than one thread (such as the personal dictionary). /[In Progress]/.
It is "In Progress" since I still need to do the formal verification as mentioned above.
[Prev in Thread] | Current Thread | [Next in Thread] |