代码:
static int flag = 1;
static int data[] = {1,2,3,4,5,6,7,8,9,10};
int length = sizeof(data)/sizeof(data[0]);
dispatch_queue_t queue = dispatch_queue_create("StudyBlocks",DISPATCH_QUEUE_SERIAL);
dispatch_async(queue, ^(void){
int sum = 0;
for (int i = 0; i < length; i++)
sum += data[i];
NSLog(@"saf");
flag = 0;
NSLog(@">>Sum:%d",sum);
});
NSLog(@"flag = %d", flag);
问题1:我运行之后发现打印只有两段话
block中后面求到的和sum没有打印出来,这是为什么?;
问题2:为什么我把后面NSLog(@"flag = %d", flag);这段话注释掉,我的程序就运行不了了?
懂得人能解释下不?