Appenders are responsible for their own synchronization.  You'll need a story for that, here.  Either a mutex in the appender, or the constructor takes the mutex as an argument, or something.