Is it safe to add to a NSMutableArray or NSMutableDictionary concurrently?
Unless you provide your own synchronization mechanism which guarantees only one thread uses it at any given time, It is NOT safe. If you use it in a way that is not thread safe, you should expect undefined behavior.