19/02/2023 21:07
(19/02/2023 13:31)White_Blue Escreveu: Dicas para otimizar seu código:
Remova códigos inúteis;
Utilize a include foreach para fazer os loops(Loops mais otimizados);
Evite a criação excessiva de mapas e objetos;
Em ocasiões onde necessita de várias verificações da mesma variável ao mesmo tempo, utilize switch case(Como o caso das dialogs).
Em certos casos, utilize variáveis estáticas pois assim você vai dizer para o compilador que aquela variável apenas vai ter vida útil até o fim da execução do programa, assim alocando menos memória do que em uma variável automática. Um exemplo:
Só utilize includes necessárias, pois includes são em geral bem pesadas e são compiladas junto com ao seu script. Então não use includes que você não precisa.Código PHP:stock GetPlayerNameEx(playerid) {
new Nome; // Alocando muito mais memória do que o necessário para a variável "Nome"
GetPlayerName(playerid, Nome, MAX_PLAYER_NAME);
return Nome;
}
stock GetPlayerNameEx(playerid) {
static Nome; // Alocando muito menos de memória do que uma variável automática.
GetPlayerName(playerid, Nome, MAX_PLAYER_NAME);
return Nome;
}
Por fim e não menos importante, lembre-se que cada tipo de variável tem seu tamanho como é possível ver abaixo:
Pode não ser um problema de otimização também. Pode ser um problema de conexão na rede do seu provedor de hospedagem ou até mesmo sua internet. Ou dependendo do plano, o seu gamemode pode estar utilizando muito processamento do servidor do seu provedor. Por isso que é recomendado utilizar uma hospedagem de qualidade.
Olá, tenho algumas dúvidas.
Como troco os ifs das minhas verificaçoes pra switch? se possivel um exemplo simples com IsPlayerAdmin só pra entender a funcionalibidade
Outra duvida, uso static ao inves de new dentro de funcoes que acabam quando sao executadas, tipo em comandos? ou seja news apenas para variaveis globais que utilizo em diversas partes do gm?
Desde ja, agradeço.