通过地址读取内存数据冲突问题

C++中通过地址读取内存数据,因为多线程操作,该内存地址正在被占用(读写),所以导致程序直接crash
我知道可以使用线程互斥量解决,除了线程间同步、互斥操作外,
有没有其他方法,当我需要读取某个地址数据的时候,先判断是否有读取该地址的权限或者什么方法即使没有读取成功也不会导致程序crash

有一个原子操作atomic机制,可以去搜搜看是否满足你。 如果你要判断读取的权限啥的,必须同一个时间只有一个线程执行它