title: Where to store data for current WCF call? Is ThreadStatic safe?
body: <p>While my service executes, many classes will need to access User.Current (that is my own User class). Can I safely store _currentUser in a <code>[ThreadStatic]</code> variable? Does WCF reuse its threads? If that is the case, when will it clean-up the ThreadStatic data? If using ThreadStatic is not safe, where should I put that data? Is there a place inside OperationContext.Current where I can store that kind of data?</p>
  
  <p><strong>Edit 12/14/2009:</strong> I can assert that using a ThreadStatic variable is not safe. WCF threads are in a thread pool and the ThreadStatic variable are never reinitialized.</p>