[Ajuda] Servidor lento
#1

Quando eu ligo o servidor no localhost, o servidor roda normalmente (claro)
mбs quando vou na host por exemplo o eu acabo de ligar o servidor
ele fica rapido direitinho roda normalmente, mбs depois de um bom tempo ligado
comeзa a ficar lento e tem vezes que nгo da nem para logar. Isso poderia ser consequкncia de SetTimer's e/ou loops maus feito? Obrigado antecipadamente.
Reply
#2

Sim. Se vocк cria um timer quando um jogador se conecta, e nгo destroi, serб criado muitos timers.

Й sempre bom entender o que se passa em 100% do seu cуdigo, por isso a qualidade de um GM feito de 0% ser sempre superior.

Abraзos.
Reply
#3

como faзo para destruir um SetTimer? Desconheзo isso.
Reply
#4

Cria uma variбvel global pra um timer, e faзa essa variбvel assumir o valor retornado por SetTimerEx ou SetTimer, e entгo basta usar KillTimer(iddotimer)

Por exemplo:

PHP код:
new MyTimer
PHP код:
MyTimer SetTimer("CallbackX",1000,true); 
PHP код:
KillTimer(MyTimer); 
Reply
#5

Quote:
Originally Posted by TenhoUmaDuvida
Посмотреть сообщение
como faзo para destruir um SetTimer? Desconheзo isso.
https://sampwiki.blast.hk/wiki/KillTimer
Reply
#6

Muito Obrigado, vou ver na minha sobre, caso nгo solucione o problema irei pedir ajuda novamente, obrigado aos dois. +RAP '-'
Reply
#7

Estou com o mesmo problema '-'
Reply
#8

Quote:
Originally Posted by PlayNob
Посмотреть сообщение
Estou com o mesmo problema '-'
Jб deu uma olhadinha no que eles falaram?
Reply
#9

Quote:
Originally Posted by TenhoUmaDuvida
Посмотреть сообщение
Jб deu uma olhadinha no que eles falaram?
Estou verificando agora isso!
Reply
#10

Por exemplo, eu uso o settimer assim
PHP код:
SetTimer("LiberarEu"60 2000false); 
Como faria pra usar ele no KillTimer? Obrigado
Reply
#11

Quote:
Originally Posted by TenhoUmaDuvida
View Post
Por exemplo, eu uso o settimer assim
PHP Code:
SetTimer("LiberarEu"60 2000false); 
Como faria pra usar ele no KillTimer? Obrigado
Й um timer global certo? Usa ele dentro da callback OnGameModeInit? Se for, nгo hб necessidade de usar KillTimer.
Reply
#12

hm, Obrigado.
Reply
#13

Se vocк usa o SetTimer com o valor false, significa que ele nгo irб se repetir, sendo assim nгo seria necessбrio o uso de KillTimer.
Agora, se vocк usar o valor true, ele irб se repetir e pra parar, seria necessбrio o KillTimer.

Abraзos,
Reply
#14

Quote:
Originally Posted by TenhoUmaDuvida
View Post
hm, Obrigado.
Certo, mas caso tenha um timer por jogador, vocк deverб usar KillTimer quando ele desconectar-se.
Exemplo:
Code:
#include <a_samp>
new Timer1[MAX_PLAYERS];

public OnPlayerConnect(playerid)
{
	Timer1[playerid] = SetTimerEx("Timer", 5000, true, "i", playerid);
	return 1;
}

public OnPlayerDisconnect(playerid)
{
	KillTimer(Timer1[playerid]);
	return 1;
}
#Edit, como xCR7 mencionou, isto vale apenas se o timer tiver repetiзгo.
Reply
#15

Verifiquei toda gm, coloquei alguns KillTimer's que estava faltando, mбs ainda continua com o servidor lento, alguйm sabe me dizer o porque disso?
Reply
#16

Quote:
Originally Posted by TenhoUmaDuvida
View Post
Verifiquei toda gm, coloquei alguns KillTimer's que estava faltando, mбs ainda continua com o servidor lento, alguйm sabe me dizer o porque disso?
Nгo hб o acumulo excessivo de objetos e veнculos? Timers com repetiзгo, curto tempo de intervalo e muita coisa pra ser carregada dentro do timer?
Reply
#17

Objetos tem muitos sim, mбs coloquei em uma gm qualquer e liguei na host e nгo deu problema algum, Timers com repetiзгo vocк diz o que? Curto tempo nгo, A Maioria das vezes sу uso o Timer para definir um valor a variavel.

Tem mais alguma sugestгo?
Reply
#18

Eu nгo diria que o poblema seja no GameMode, pelo fato de ele esta normal em LocalHost, Bom eu creio que seja algum FS que esta Hospedado em sua Host .

Eu tive esse poblema uma vez quando eu hospedei na WidHost, la eles me deram um FS Amx Chamado AntiHack й o poblema tava nesse .

Tem pessoas que tem mania de colocar assim .

OnGameMode
pawn Code:
SetTimer("IniciarPublic", 3000, false);
pawn Code:
forward IniciarPublic();
Public IniciarPublic(){
SetTimer("IniciarPublic", 3000, false); //se ficasse False nгo teria poblema mais tem pessoas que esqueзe e bota True kkkkk ai ja viu o que da ner .. precisa nem dizer . irar criar uma public "true" acada 3 segundo .
//Funзгo
}
Bom espero que tenha te ajudado, eu creio que seja isso .
Reply
#19

Nгo uso qualquer tipo de FS, e nгo fiz nenhum code como o exemplo acima.
Reply
#20

Entгo pode ser sua hospedagem, entra em contato com o suporte .
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)