【发布时间】:2015-03-23 05:28:35
【问题描述】:
方法enumerateByteRangesUsingBlock: 在类NSData 中,在Apple 文档中解释如下:
使用块枚举数据对象中的每个字节范围。
- (void)enumerateByteRangesUsingBlock:(void (^)(const void *bytes, NSRange byteRange, BOOL *stop))block参数
block
应用于数组中字节范围的块。该块接受三个参数:
bytes
当前范围的字节数。byteRange
当前数据字节的范围。stop
对布尔值的引用。该块可以将该值设置为 YES 以停止对数据的进一步处理。 stop 参数是一个 out-only 参数。您应该只在 Block 中将此布尔值设置为 YES。讨论
对于接收器中的每个连续内存区域调用一次枚举块(对于连续的 NSData 对象总共调用一次),直到枚举完所有字节或将停止参数设置为 YES。
但我的问题是,该块何时执行?哪个方法负责为块提供参数bytes、byteRange 和stop?比如我想遍历bytes数组的一部分,应该怎么控制?
【问题讨论】:
标签: ios objective-c nsdata