> But this has no more to do with parallelism than any other > feature of C. If you used __block vars in a block, you'd > still need to lock them when the block is called from > different threads.
that's a lot worse than a function pointer. with a function pointer your going to get unique space on the stack for each invocation. the variable capture thing seems to me to just confuse the issue. c doesn't otherwise work like that. - erik