简单概括数据竞争,就是两个以上对象同时访问一个内存位置,且至少有一个写操作,两个都是非原子操作,且内存没有锁保护
例子:
此时两个线程同时访问count,两个都是写操作,非原子操作,且count没有锁保护
数据竞争会引发未定义行为,也就是编译器可以任意操作执行顺序