RxJS ставит в очередь зависимые задачи

Если у меня есть массив массивов, как это

{
    parent: [
        {
            name: 'stu',
            children: [
                {name: 'bob'},
                {name: 'sarah'}    
            ]
        },
        { 
          ...
        }
    ]
}

и я хочу циклически проходить через каждого родителя и последовательно просматривать их потомков, чтобы я не запускал следующего родителя до тех пор, пока не будут обработаны все потомки (некоторый длительный асинхронный процесс), как мне это сделать с RxJS?

Я попытался это:

var doChildren = function (parent) {
    console.log('process parent', parent.name);
    rx.Observable.fromArray(parent.children)
    .subscribe(function (child) {
        console.log('process child', child.name);
        // do some Asynchronous stuff in here
    });
};

rx.Observable.fromArray(parents)
.subscribe(doChildren);

Но у меня выходят все родители, а потом все дети.

Ответы на вопрос(2)

Ваш ответ на вопрос