[prev in list] [next in list] [prev in thread] [next in thread] 

List:       aspell-user
Subject:    Re: [Aspell-user] Thread Safety Question
From:       Kevin Atkinson <kevina () gnu ! org>
Date:       2005-10-20 10:43:47
Message-ID: 20051020044152.P36934 () bas ! flux ! utah ! edu
[Download RAW message or body]



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 list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic