Ir para conteúdo
  • 0

Diferença entre as funções dofile e require


Mazynho

Pergunta

Galera poderiam min dizer a diferença entre a função dofile(filename) e a require(filename)?

 

Outra coisa:

testei as duas e vi que ao usa-las os dados do arquivo ficam armazenados na memoria, pois são módulos, com as duas funções eu acho. Existe alguma função para excluir os dados desse arquivo, da memoria, tipo "descarregar o arquivo"? vou exemplificar para ficar melhor.

 

arquivo_que_ira_ser_Carregado.lua

 

dentro do arquivo_que_ira_ser_Carregado.lua:

var1 = "OI"

var2 = 10

function teste (X)
	return (10 + X)
end

dentro de um arquivo .lua qualquer:

function onUse(cid, item, frompos)
	dofile(arquivo_que_ira_ser_Carregado.lua)

	doPlayerSendTextMessage(cid, 22, var1)

	doPlayerSendTextMessage(cid, 22, teste (X))

	return true
end

ao terminar a execução do arquivo .lua qualquer os dados referentes ao arquivo_que_ira_ser_Carregado.lua seriam excluídos da memoria Ram.

 

 

 

Outra coisa: carregar um modulo, consome muita memoria, a ponto de travar e/ou dar lag no jogo?

 

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

O dofile só executa o bloco de código, e o require carrega modulos.

O require não carrega duas vezes o modulo, ja o dofile a quantidade de vezes que voce chamar vai carregar o bloco

quanto a consumo de memoria nao sei dizer, mas acredito que seja proporcional ao tamanho do bloco carregado

Link para o comentário
Compartilhar em outros sites

  • 0

O dofile só executa o bloco de código, e o require carrega modulos.

O require não carrega duas vezes o modulo, ja o dofile a quantidade de vezes que voce chamar vai carregar o bloco

quanto a consumo de memoria nao sei dizer, mas acredito que seja proporcional ao tamanho do bloco carregado

 

Muito obrigado Dalvorsn!

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...