Мне кажется, что эти ответы были написаны для Python 2, и в любом случае никто не упомянул стандартный пакет resource
, доступный для Python 3. Он предоставляет команды для получения ресурса ограничивает данного процесса (по умолчанию процесс вызова Python). Это не то же самое, что получение текущего использования ресурсов системой в целом, но оно может решить некоторые из тех же проблем, как например. «Я хочу убедиться, что я использую только X много оперативной памяти с этим скриптом».
Вы не должны подписываться на наблюдаемое внутри трубы. Это анти-паттерн. Используйте вашу более высокую наблюдаемую и mergeMap с combLatest, чтобы получить то, что вы хотите:
this.backend
.request(
'v1/users',
)
.pipe(
mergeMap(items => {
const requestUserWithCatArray = items.map(user => this.categories.getName(user['id']).pipe(
map(category => {
user['category_id'] = category['id'];
return user;
})
));
return combineLatest(requestUserWithCatArray);
})
);
Он вернет массив пользователей с их категорией.