title: Simple C++ logger by using singleton pattern
body: <p>Due to the flooding examples of implementing logger using Singleton pattern, I have just written a simple C++ logger in the same approach for my program. However, since the famous double-checked locking approach is known to be no more thread-safe, I wonder if I should:</p>
  
  <p>1) Forget about the use of Singleton pattern in this case?</p>
  
  <p>2) Continue to use double-checked locking even though it is unsafe?</p>
  
  <p>3) Use the expensive pure sync lock method for every access to its public interfaces?</p>
  
  <p>Any suggestions?</p>