1. I'm creating a C# plugin and I'm storing some data in a Dictionary that is read/updated pretty often. My initial thought was that I needed to use locking to prevent multiple threads from reading/writing, and then I realized that I wasn't sure if hooks are invoked by different threads.

    So, my question is, is thread safety a concern? Or is everything operating within the same thread?
     
  2. All i can say is that you are not allowed to use: lock
     
  3. Also don't create additional Threads with timers or BackgroundWorkers you may crash the server.
     
  4. I'm using lock and it's working fine. What I'm wondering is if synchronization is even necessary in the first place.