arashpayan / appirater

A utility that reminds your iPhone app's users to review the app.

Home Page:http://arashpayan.com/blog/2009/09/07/presenting-appirater/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Lack of thread safety

OrangeDog opened this issue · comments

Appirater is not at all thread safe, even when used from a single thread.
For example after this simple code, the value of the count could be incremented by anything between 1 and 3.

[Appirater userDidSignificantEvent:NO];
[Appirater userDidSignificantEvent:NO];
[Appirater userDidSignificantEvent:NO];

Instead of dispatching to a global concurrent queue, it needs to use a private serial queue.
That will be better performance than the alternative of adding @synchronize everywhere.