Ir para conteúdo
  • 0

O que posso fazer para esse code não lagar? (BukkitCode)


Solitario

Pergunta

					try{
						URL url = new URL("localhost/index.php?kd="+ kd +);
						URLConnection connection = url.openConnection();
			            BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
			            String text = in.readLine();
			            String[] Dados = text.split(" - ");
			            in.close();
}

O que esta acontecendo é que ao digitar o comando as vezes termina lagando até não terminar a busca ... ai tipo que da uma travada ...

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

Coloca em uma Thread separada. O que vai acontecer é que não haverá a travada ao digitar, mas de qualquer jeito vai ter que esperar a leitura terminar.

new Thread() {
    @Override
    public void run() {
        // seu código aqui
    }
}.start();

Mas não saia pensando "vou tacar Thread em tudo e ta suave", muitas coisas do Bukkit (a maioria na verdade) não se pode usar Thread, e ao usar Thread de maneira errada você pode causar muitos outros problemas. Isto pode ser útil  pra você: http://wiki.bukkit.org/Scheduler_Programming#Tips_for_thread_safety

Link para o comentário
Compartilhar em outros sites

tentei fazer isso também para pegar o pais de jogadores, usando um site de geoip.. desisti de fazer isso porque laga mesmo

não sei o que você está tentando fazer mas o melhor é guardar os dados em sql ou alguma db

Editado por zAth
Link para o comentário
Compartilhar em outros sites

tentei fazer isso também para pegar o pais de jogadores, usando um site de geoip.. desisti de fazer isso porque laga mesmo

não sei o que você está tentando fazer mas o melhor é guardar os dados em sql ou alguma db

hehe isso mesmo só que do mercadopago ... não vejo outro jeito de capturar os dados

Link para o comentário
Compartilhar em outros sites

hehe isso mesmo só que do mercadopago ... não vejo outro jeito de capturar os dados

vish, não sou br ;-; nunca usei mercadopago.. mas acho que ele tem uma api, não tem como pegar os dados pela api?

Link para o comentário
Compartilhar em outros sites

Coloca em uma Thread separada. O que vai acontecer é que não haverá a travada ao digitar, mas de qualquer jeito vai ter que esperar a leitura terminar.

new Thread() {
    @Override
    public void run() {
        // seu código aqui
    }
}.start();

Mas não saia pensando "vou tacar Thread em tudo e ta suave", muitas coisas do Bukkit (a maioria na verdade) não se pode usar Thread, e ao usar Thread de maneira errada você pode causar muitos outros problemas. Isto pode ser útil  pra você: http://wiki.bukkit.org/Scheduler_Programming#Tips_for_thread_safety

Ok kk, também n sei usar thread ... ou seja n irei usar muito só quero para isso mesmo :) ... só uma pergunta tava usando return true; em algumas funções ... o que posso usar agora para parar o codigo ?

 

@edit:

 

 

vish, não sou br ;-; nunca usei mercadopago.. mas acho que ele tem uma api, não tem como pegar os dados pela api?

 
Tipo não sei de nenhuma api pronta '-' ... se for para criar uma api vou me foder kk

vish, não sou br ;-; nunca usei mercadopago.. mas acho que ele tem uma api, não tem como pegar os dados pela api?

 
Editado por Solitario
Link para o comentário
Compartilhar em outros sites

Ok kk, também n sei usar thread ... ou seja n irei usar muito só quero para isso mesmo :) ... só uma pergunta tava usando return true; em algumas funções ... o que posso usar agora para parar o codigo ?

Use return; quando é void, ou seja, "vazio" não retorna nada, então use apenas return;

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...