callback always on nextTick