{"id":3307,"date":"2024-06-23T21:09:43","date_gmt":"2024-06-24T01:09:43","guid":{"rendered":"https:\/\/linguagemprisma.br4.biz\/blog\/?p=3307"},"modified":"2024-06-23T23:28:27","modified_gmt":"2024-06-24T03:28:27","slug":"limpando-a-memoria-com-a-funcao-coletelixo","status":"publish","type":"post","link":"https:\/\/linguagemprisma.br4.biz\/blog\/uncategorized\/limpando-a-memoria-com-a-funcao-coletelixo\/","title":{"rendered":"Limpando a mem\u00f3ria com a fun\u00e7\u00e3o: coletelixo()"},"content":{"rendered":"<p>Ol\u00e1, pessoal.<\/p>\n<p>Muitas vezes, nossos programas acabam usando muita mem\u00f3ria da m\u00e1quina. Ao abrir um arquivo grande, por exemplo.<\/p>\n<p>O programa ir\u00e1 automaticamente lidar com a limpeza de mem\u00f3ria, j\u00e1 que prisma possui gerenciamento autom\u00e1tico de mem\u00f3ria.<\/p>\n<p>No entanto, essa limpeza pode demorar, ou at\u00e9 n\u00e3o ser feita em algumas situa\u00e7\u00f5es. Por\u00e9m, h\u00e1 uma maneira de cuidarmos disso, veja o c\u00f3digo que precisa ser melhorado abaixo:<\/p>\n<pre class=\"lang:prisma decode:true\"> \/\/exemplo de um c\u00f3digo ruim:\r\n local dir = inclua'dir';\r\n conteudo = dir.leia_arquivobin('arquivogrande');\r\n \r\n fun\u00e7\u00e3o principal()\r\n    imprima(conteudo);\r\n    \/\/outros c\u00f3digos agui...\r\n    retorne 0;\r\n fim\r\n<\/pre>\n<p>O que podemos fazer no c\u00f3digo acima para melhor\u00e1-lo? Simples! Sempre que n\u00e3o precisar mais de uma vari\u00e1vel que est\u00e1 ocupando muita mem\u00f3ria, basta atribuirmos o valor nulo a ela, e logo ap\u00f3s chamar a fun\u00e7\u00e3o para limpar a mem\u00f3ria.<\/p>\n<p>Veja as modifica\u00e7\u00f5es:<\/p>\n<pre class=\"lang:prisma decode:true \"> \/\/exemplo de um c\u00f3digo ruim:\r\n local dir = inclua'dir';\r\n local conteudo = dir.leia_arquivobin('arquivogrande');\r\n \r\n fun\u00e7\u00e3o principal()\r\n    imprima(conteudo);\r\n    \/\/n\u00e3o precisamos mais da vari\u00e1vel conteudo\r\n    conteudo = nulo;\r\n    imprima('Limpeza de memoria em 5 segundos...');\r\n    sis.durma(5000);\r\n    coletelixo();\r\n    \/\/outros c\u00f3digos agui...\r\n    retorne 0;\r\n fim\r\n<\/pre>\n<p>Ap\u00f3s usar a fun\u00e7\u00e3o coletelixo(), a vari\u00e1vel libera tudo o que estava na mem\u00f3ria antes, fazendo o seu programa mais eficiente, economizando mem\u00f3ria. Isso em um computador pessoal, pode n\u00e3o fazer muita diferen\u00e7a, mas em um servidor faz toda.<\/p>\n<p>Dica: troque &#8216;arquivogrande&#8217; por um nome de arquivo real em seu computador, abra o gerenciador de tarefas e veja o tanto de mem\u00f3ria que ser\u00e1 limpa.<\/p>\n<p>Pessoal, espero que tenha sido \u00fatil este post e at\u00e9 mais.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ol\u00e1, pessoal. Muitas vezes, nossos programas acabam usando muita mem\u00f3ria da m\u00e1quina. Ao abrir um arquivo grande, por exemplo. O programa ir\u00e1 automaticamente lidar com a limpeza de mem\u00f3ria, j\u00e1 que prisma possui gerenciamento autom\u00e1tico de mem\u00f3ria. No entanto, essa limpeza pode demorar, ou at\u00e9 n\u00e3o ser feita em algumas situa\u00e7\u00f5es. Por\u00e9m, h\u00e1 uma maneira&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-3307","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/posts\/3307","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/comments?post=3307"}],"version-history":[{"count":10,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/posts\/3307\/revisions"}],"predecessor-version":[{"id":3318,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/posts\/3307\/revisions\/3318"}],"wp:attachment":[{"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/media?parent=3307"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/categories?post=3307"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/tags?post=3307"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}