例如,在线程1中执行某些操作并使用全局变量,但另一个线程可能会更改此值
主题1
a = 1;
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
NSLog(@"a = %d", a);
});
主题2
a = 2;
有两个问题,
答案 0 :(得分:1)
因此,如果您需要保护某些内容不被多个线程访问,那么您需要通过添加一些同步来保护它。你如何选择这样做取决于它是什么,每个案例都需要单独考虑。