static inline int atomic_read(const atomic_t *v) { return (*(volatile int *)&(v)->counter); }
防止读取的是寄存器的内容,而内存的值已经被其他线程改变