Remove child from Batch node one after another with a pause

I am trying to remove a set of children from the batch node one by one after some pause . So if three children are there, then firstly parent will disappear immidiatley , then after 1 second first child will disappear, then after another 1 second(total 2 seconds) 2nd child will disappear and after another 1 second(total 3 seconds) third child will disappear.

Right now I am removing them from the batchnode like :-

batchNode~~>removeChild;
sleep;
batchNode~~>removeChild(child2,true);
sleep(2)
batchNode->removeChild(child3,true);

But they all disappear from screen at same time ! although pause is there. Is it because they all are part of same batchNode so any action taken on children will be applied at one go. ?

Please share your thoughts

I tried CCCallFunc,parent disappear quickly and after a delay other two children disappear together.I used this in loop 3 times(total shapes removed)this->runAction(CCSequence::create(delayAction,CCCallFunc::create(this,c‌​allfunc_selector(GameLayer::releaseChildCallFunc)),NULL)),“this” is GameLayer so i tried other approach. Now I remove parent quickly, then its children after 10 frames, and other children after another 10 frames. While I am waiting I am doing no work in game. If frame rate is regulated then it should work fine , pls share your thoughts. Here is the SO link [[http://stackoverflow.com/questions/19543024/remove-child-from-batch-node-one-after-another-with-a-pause]]