Scribe
Scribe

Gostou? Torne o Scribe ainda melhor deixando uma avaliação

Obter Extensão do Chrome

Navegar

  • Vídeos Populares
  • Vídeos Recentes
  • Todos os Canais

Ferramentas Gratuitas

  • Baixador de Legendas de Vídeo
  • Gerador de Marcadores de Tempo de Vídeo
  • Resumidor de Vídeos
  • Contador de Palavras de Vídeo
  • Analisador de Títulos de Vídeo
  • Busca de Transcrições de Vídeo
  • Análises de Vídeo
  • Criador de Capítulos de Vídeo
  • Gerador de Quiz de Vídeo
  • Chat com Vídeo

Produto

  • Preços
  • Blog
  • Obter Extensão do Chrome

Developers

  • Transcript API
  • API Documentation

Legal

  • Termos
  • Privacidade
  • Suporte
  • Mapa do Site

Direitos Autorais © 2026. Feito com ♥ por Scribe

— Se isso tornou sua vida mais fácil (ou pelo menos um pouco menos caótica), deixe-nos uma avaliação! Prometemos que vai alegrar nosso dia. 😊

Related Videos

Aula 001 Memoria Stack

Video thumbnail
01,762 Palavras8m readGrade 18
Compartilhar
Channel
Next Wave Education
durante o processo de desenvolvimento de software nós trabalhamos com variáveis com chamadas de métodos construções desses métodos passar variáveis dentro dos métodos também isso tudo é Um fundamento muito básico para quem tá começando a programar mas ao longo da nossa carreira muitas vezes a gente vai fazendo esses desenvolvimentos e não se atentando muito a como que um Framework ou como que aquele aquela linguagem de programação que você utiliza no dia a dia ela faz ali a locação de memória a locação de memória no processo de desenvolvimento de software ela é muito importante e é muito
importante também que o desenvolvedor entenda Quais são as memórias e também como que essas alocações são feitas porque pensando em performance Esse é um tema extremamente crítico a gente vai falar e vai ver um pouquinho aqui sobre fundamentos da memória stack que é uma memória principalmente no dnet ali que é uma memória muito importante e tem algumas certas limitações que eu vou mostrar para vocês agora apenas dando aqui um overview sobre o que que é a memória stack ela é um bloco de memória que é utilizado ali na sua grande conjunção para chamar métodos e
guardar essas variáveis Então pensa na memória stack visualiza ela como se ela fosse um monte de prato e aí a cada vez que você utiliza ali aquele prato você precisa de mais espaço e você vai colocar um prato em cima do outro um conceito de fila praticamente então imagine aqui que a memória stack ela tem ali vai criando uma pilha e essa pilha vai crescendo e crescendo e crescendo até uma hora que essa pilha não tem mais Onde colocar um novo prato fazer uma uma analogia aqui brevemente basicamente mas a memória steack ela é uma
memória que serve para isso basicamente Ela guarda ali as suas variáveis e tudo mais e também é interessante falar que essas variáveis que estão compostas dentro de métodos né imagina o método ali get user by ID no csharp onde você vai criar o método para passar um id e você vai chamar esse ID num banco de dados ali num SQL alguma coisa do tipo Então esse ID que você tá passando ali na composição né para dentro daquele método ele vai ser guardado né Essa variável temporária ali vai ser guardada na stack juntamente com a referência
como se fosse um ponteiro para esse método e para essas variáveis e o escopo das variáveis também que estão dentro desses métodos eles também vão ter um ciclo de vida menor al ali do que normalmente teria se fosse um outro tipo de memória Então o que eu tô falando aqui por exemplo imagina esse exemplo aqui que a gente tem que é uma classe pública estática que é para desenhar uma linha ou várias linhas aqui eu tô passando X1 y1 X2 Y2 então ali basicamente essa esses essas variáveis que estão compostas aqui dentro e todos esses
valores e todas as referências e todos esses tipos vão ser guardados ali dentro da memória stack para que o próprio gerenciador ali consiga entender Quem que tá sendo alocado o quanto de espaço que está sendo alocado e só lembrando também uma coisa muito importante a memória stack ela é uma memória que ela tem não tem muito espaço então é uma memória que a gente tem que guardar com muito carinho ali também na teoria o que eu quero dizer é isso a gente começa com um stack sem nada então basicamente quando o seu software vai fazer
o War up Ali vai começar né vai dar um start no seu software imagina que você tá fazendo uma API com dnet Core por exemplo então a steack vai est vazia e a cada chamada de método criação de variável passagem de variáveis também para dentro desses métodos ele vai dando um push ali dentro dessa memória e aí isso vai acontecendo vai acontecendo vai acontecendo e esse ciclo de memória ele é gerenciado pelo próprio Framework do dnet só que existem alguns casos que às vezes por Acidente eh ou por vez talvez você faz um método cíclico
ali que fica o próprio método chamando o próprio método né esse é o caso mais comum que a gente vê nos projetos reais isso uma hora você pode acabar não tendo mais espaço ali para dar push nessa memória nesse espaço de memória e aí vai acontecer aquele famoso stack overflow ou seja a gente não tem mais espaço em memória e aí vai dar um overflow na memória e simplesmente seu software vai receber ali uma parada brup vamos falar dessa forma e vai parar de funcionar porque não tem mais espaço n stec então se você tentar
colocar fazer uma locação de uma nova variável fazer uma chamada de um método não vai funcionar E aí vamos dar um exemplo clássico disso com o código de exemplo aqui então eu tenho aqui visual Studio 2022 basicamente eu criei aqui um projeto esse projeto nós vamos usar ao longo das aulas aqui vamos criando novas estruturas e tudo mais mas aqui eu tenho uma classe chamada drawline que é aquela classe que eu acabei de mostrar para vocês ali naquele exemplo então o drawline aqui eu vou passar uma variável um X1 um y1 um X2 um Y2
São todos da tipagem inteiro e aí e dentro dessa mesma classe eu vou chamar ela de forma cíclica Então essa classe ela vai ficar chamando ela mesma aqui no loop eterno e aí como ela faz muita locação de variáveis e o próprio método tá chamando esse próprio método foi um bom exemplo aqui pra gente ver esse tipo de alocação de memória na stack isso aqui eu venho aqui no programa.cs então basicamente o exemplo que nós vamos dar aqui da memória steack dessa locação a gente vai fazer um console right line esse console P artline aqui
ele vai subjetivamente aqui desenhar quatro linhas né com seus tamanhos e as suas larguras aqui e aí no final ele deveria falar pra gente que o desenho foi feito só que a gente aqui propositalmente colocou um código desse que fica chamando o próprio método então ele nunca vai acabar Isso aqui vai ficar chamando e chamando e chamando até que uma hora vai dar um problema Esse problema nós vamos ver agora né que é o famoso stack overflow que todo mundo conhece vou dar o play aqui nesse projeto Lembrando que eu tô usando aqui dnet 8
se você for fazer esse mesmo tipo de implementação e olha só o que foi esperado né Ou seja a gente teve um problema realmente teve aqui um System pstack overflow Exception né tá falando aqui pra gente basicamente Olha eu não tô conseguindo mais eu não tenho mais espaço disponível na stack porque você fez algum código aí aqui a gente fez uma forma proposital obviamente mas Olha o códo tá falando eu não tenho mais onde alocar aqui para você porque você chamou muitas vezes aqui e alocou muita coisa na memória stack e esse erro é um
erro padrão né até temos um site bem famoso que todo mundo conhece que tem esse próprio nome aqui stack overflow então dessa forma é uma forma que a gente consegue entender né Que tipo de alocação que a gente tá sendo feito aqui a gente tá passando bastante eh variáveis bastante tipagem e aí uma coisa que é cara também é esse próprio método né lá na stack ele coloca ele faz uma alocação de um ponteiro e esse ponteiro tem que entender para onde que aquela chamada desse método nesse caso tá indo então ele tá criando ponteiros
gravando a referência dessas dessas informações gravando o valor e a tipagem dessas variáveis que estão sendo passadas aqui também dentro aqui se eu tivesse outras variáveis ele também é salvar temporariamente essas variáveis aqui e tudo mais né Eh nesse caso aqui se eu tivesse também classes né que é o que a gente vai falar mais paraa frente sobre outro tipo de memória mas se eu tivesse classes aqui sendo utilizadas representadas aí eu tenho além da memória stack Eu tenho uma outra alocação também que é a memória hiip né então tem essa distinção e tem essa
junção às vezes às vezes eu faço a locação de memória onde eu tenho alguns momentos que eu tenho memória hiip e memória steack sendo alocada do mesmo jeito e a gente precisa entender isso é fundamento e a gente precisa entender correto então basicamente um resumo aqui da memória stack ela observa e armazena as chamadas dos métodos ela contém frames que guarda esses parâmetros então cada push né Cada vez que a gente faz uma chamada de um método por exemplo passando ali eh qual que é o método Quais são as variáveis Quais são as tipagens é
um frame novo então é aquele pratinho que a gente fez essa essa analogia E aí eu vou colocando um novo pratinho ele vai salvar para mim qual é o método Quais são as variáveis eh se eu tiver algum tipo de alocação também na na outra memória que a gente vai falar um pouco mais paraa frente ele também cria uma referência para lá endereço de retorno variáveis locais Então veja é uma memória limitada mesmo porque ela é uma memória mais rápida el uma memória que você consegue trabalhar com dados de forma muito mais rápida e o
stack frame que eu acabei de falar ele é removido quando retorna também uma chamada de um método por exemplo E aí as suas variáveis locais vão ficar obsoletas Então imagina você criar um novo método passar as variáveis ali dentro você criou algumas variáveis para fazer um cálculo imagina uma calculadora calcule dois valores né você passou para dentro desse método ali dentro você tem uma variável que faz a soma e faz um return para você então depois que isso daí já acabou e retornou para quem chamou aquelas variáveis aquele método vai ficar obsoleta ou fora de
escopo como a gente diz e se for executado esse método que nem a gente viu aqui diversas vezes principalmente de uma forma recursiva ou às vezes até dentro de um código ali de alguma forma errada dentro de um de um for com milhões de interações a stack vai ficar cheia e a gente vai receber o famoso stack overflow exception
Vídeos relacionados
Ibiza Summer Mix 2024 🍓 Best Of Tropical Deep House Music Chill Out Mix 2023 🍓 Chillout Lounge
Ibiza Summer Mix 2024 🍓 Best Of Tropical ...
Magic Club
Galactic Ambiance: Soothing Spaceship Noise with Starry Views for Sleep and Focus
3:17:09
Galactic Ambiance: Soothing Spaceship Nois...
Cosmic Harmonies
227 views
Morning Elegant Jazz ☕ Uplifting Jazz Piano Music & Sweet Bossa Nova for Happy Mood
Morning Elegant Jazz ☕ Uplifting Jazz Pian...
Cafe Jazz Music
Relaxing Music and The Sound of Water to Relieve Worry and Anxiety 🌿 Relieve Stress
Relaxing Music and The Sound of Water to R...
The Waters of Heaven
Maroon 5, Ed Sheeran, The Weeknd, Bruno Mars, Dua Lipa, Adele, Rihanna 🌟 Música Pop En Inglés 2024 💖
Maroon 5, Ed Sheeran, The Weeknd, Bruno Ma...
Pop Music
Autumn Porch Vibes 🍂 Enchanting Jazz Playlist and Gentle Fire Sounds for Cozy Halloween Evenings 🎃
Autumn Porch Vibes 🍂 Enchanting Jazz Play...
Cozy Jazz Ambience
Soothing water music to sleep 🌺 Stress-relieving music, Insomnia treatment, Relaxing music
Soothing water music to sleep 🌺 Stress-re...
Peaceful drops of water
🔴 Al Jazeera English | Live
🔴 Al Jazeera English | Live
Al Jazeera English
🔴 Deep Focus Music To Improve Concentration - Ambient Study and Work Music to Concentrate
🔴 Deep Focus Music To Improve Concentrati...
4K Video Nature - Focus Music
5 Minutes for the Next 50 Years - Mathhew McConaughey Motivational Speech
5:19
5 Minutes for the Next 50 Years - Mathhew ...
Life Advice
4,896,412 views
Deep Focus - Music For Studying | Improve Your Focus - Study Music
Deep Focus - Music For Studying | Improve ...
Greenred Productions - Relaxing Music
Vj Loop 51 | Motion Purple Pink Rays 4K
1:00:43
Vj Loop 51 | Motion Purple Pink Rays 4K
Vj Loops Gallery • 1M
729 views
Relaxing Music to Relieve Stress, Anxiety and Depression • Mind, Body 🐬 Soothing music for nerves
Relaxing Music to Relieve Stress, Anxiety ...
Soothing Soul
Maroon 5, Ed Sheeran, The Weeknd, Bruno Mars, Dua Lipa, Adele, Rihanna 🌟 Música Pop En Inglés 2024 💖
Maroon 5, Ed Sheeran, The Weeknd, Bruno Ma...
Pop Music
Soothing Jazz and Cozy Reading Nook 🌧️ Rain & Fireplace Sounds for a Good Night's Sleep
Soothing Jazz and Cozy Reading Nook 🌧️ Ra...
Cozy Cabin Ambience
October Jazz: Sweet Jazz & Elegant Bossa Nova to relax, study and work effectively
October Jazz: Sweet Jazz & Elegant Bossa N...
Cozy Jazz Music
Relaxing Music with Water Sounds for Stress Relief 🌿 Relieve depression
Relaxing Music with Water Sounds for Stres...
The Waters of Heaven
Crackling Fireplace & Smooth Jazz Instrumental 🍂 Warm Jazz Music at Cozy Fall Coffee Shop Ambience
Crackling Fireplace & Smooth Jazz Instrume...
Relax Jazz Cafe
Rihanna, Adele, The Weeknd, Dua Lipa, Maroon 5, Miley Cyrus, Ed Sheeran 🌟 Música Pop En Inglés 2024💖
Rihanna, Adele, The Weeknd, Dua Lipa, Maro...
Pop Music
🔴 Deep Focus 24/7 - Ambient Music For Studying, Concentration, Work And Meditation
🔴 Deep Focus 24/7 - Ambient Music For Stu...
4K Video Nature - Focus Music