Question

What does the allocation under "VM: Dispatch continuations" signify?

enter image description here (http://i.stack.imgur.com/4kuqz.png)

Was it helpful?

Solution

@InkGolem is on the right lines. This is a cache for dispatch blocks inside GCD.

@AbhiBeckert is off by a factor of 1000. 16MB is 2 million 64-bit pointers, not 2 billion.

This cache is allocated on a per-thread basis, and you're just seeing the allocation size of this cache, not what's actually in use. 16 MB is well within range, if you're doing lots of dispatching onto background threads (and since you're using RAC, I'm guessing that you are).

Don't worry about it, basically.

OTHER TIPS

From what I understand, Continuations are a style of function pointer passing so that the process knows what to execute next, in your case I'm assuming those would be dispatch blocks from GCD. I'm assuming that the VM has a bunch of these that it uses over time, and that's what you're seeing in instruments. Then again, I'm not an expert on threading and I could be totally off in left field.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top