I have an application with two threads in addition to the main thread. There is a shared data resource which consists of a bunch of configuration parameters. The main application determines all the parameters and then creates the other two threads. Once established the parameters never change, however they are used by all three threads.
Do I still need to implement synchronization e.g. a mutex to protect the data, or since it never chages, locking is not necessary? Or another way to put it, is it ok to have multiple threads read data at the same time without locking it?