---
title: "Discussion on \"Tratando vazamento de memória em aplicações Angular.\" | Hashnode"
description: "Discussion on \"Tratando vazamento de memória em aplicações Angular.\". Quando começamos o aprendizado de uma aplicação Angular, aprendemos o básico de RxJS para criar nossos componentes, principalmente quando temos que realizar alguma requisição HTTP. \n( link )\nO conceito de Observable implementado no RxJS é poderoso e ..."
url: "https://hashnode.com/posts/tratando-vazamento-de-memoria-em-aplicacoes-angular/5d03121ddaf95ab7625db163"
---

[Feed](https://hashnode.com/feed) /

Discussion

# [Tratando vazamento de memória em aplicações Angular.](https://alvarocamillont.dev/tratando-vazamento-de-memoria-em-aplicacoes-angular?utm_source=hashnode&utm_medium=feed)

Quando começamos o aprendizado de uma aplicação Angular, aprendemos o básico de RxJS para criar nossos componentes, principalmente quando temos que realizar alguma requisição HTTP. ( link ) O conceito de Observable implementado no RxJS é poderoso e ...

Jun 14, 2019 · alvarocamillont.dev  
Read the article

-   [#angularjs](https://hashnode.com/tag/angularjs)
-   [#typescript](https://hashnode.com/tag/typescript)
-   [#rxjs](https://hashnode.com/tag/rxjs)

## Written by

[Alvaro Camillo Neto](https://hashnode.com/@alvarocamillont)

@alvarocamillont · São Paulo, Brazil

  
[View profile](https://hashnode.com/@alvarocamillont)

Desenvolvedor e palestrinha

Desenvolvedor e palestrinha

## Responses 1

Markdown supported · ⌘↵ to post

[Fábio Miranda](https://hashnode.com/@fabiomirandadev)

[Sep 11, 2019](https://hashnode.com/posts/tratando-vazamento-de-memoria-em-aplicacoes-angular/5d03121ddaf95ab7625db163/comment/5d797a7e9c7b976f5fe0b98c)

Se o observable for usado para pegar a informação uma única vez, dá pra usar também o operador `take` do rxjs com `1` de parâmetro.

Só é importante saber que ele vai ser destruído(subscrito) apenas quando emitir o valor, pra poder organizar os cenários de uso.

Só deixando um exemplo:

```
    this.subPeople = this.http
      .get<People>('swapi.co/api/people/1')
      .pipe(take(1))
      .subscribe((data: People) => {
        this.people = data;
      });
```

[Alvaro Camillo Neto](https://hashnode.com/@alvarocamillont)

[Sep 12, 2019](https://hashnode.com/posts/tratando-vazamento-de-memoria-em-aplicacoes-angular/5d03121ddaf95ab7625db163/comment/5d797a7e9c7b976f5fe0b98c#reply-5d79a8069c7b976f5fe0b9aa)

Muito Obrigado pelo comentário, você está certíssimo. No artigo eu quis chamar a atenção para esse risco que muita gente que está começando não conhece e alguns exemplos para evitá-lo. Mas seu exemplo está perfeito Obrigado!

[Fábio Miranda](https://hashnode.com/@fabiomirandadev)

[Sep 12, 2019](https://hashnode.com/posts/tratando-vazamento-de-memoria-em-aplicacoes-angular/5d03121ddaf95ab7625db163/comment/5d797a7e9c7b976f5fe0b98c#reply-5d7a6c3fb01d12c119edd10b)

Isso é verdade. Aparentemente a galera começa a desenvolver sem entender um pouco a parte mais teórica da tecnologia e aí não sabe que isso pode causar grandes problemas. Eu já peguei um projeto onde estava tendo vários estouros de memória, e o problema era justamente esse de esquecer de matar os observables. Era até engraçado, porque a maioria das chamadas poderia ter sido feita apenas com o Pipe Async e resolveria o problema.

Mas enfim, excelente artigo. Eu estou escrevendo um sobre dicas básicas de performance no Angular, e provavelmente citarei aqui o seu lá =)
