brucedeity Posted April 30, 2023 Share Posted April 30, 2023 (edited) Edited May 1, 2023 by brucedeity 2 1 2 1 1 Quote Link to comment Share on other sites More sharing options...
Revoltz Posted April 30, 2023 Share Posted April 30, 2023 Brilhante ideia man, curtir bastante! Uma dúvida, isso consumiria mais desempenho da máquina? Quote Link to comment Share on other sites More sharing options...
brucedeity Posted April 30, 2023 Author Share Posted April 30, 2023 12 minutos atrás, Revoltz disse: Brilhante ideia man, curtir bastante! Uma dúvida, isso consumiria mais desempenho da máquina? Não, você simplesmente sobrescreve a memória que já estava em uso com as novas informações. Estou testando bem para ver o quão viável é usar isso em um servidor em produção e até o momento o único ponto ruim é o povo continuar jogando sem atualizar o jogo Quote Link to comment Share on other sites More sharing options...
Revoltz Posted April 30, 2023 Share Posted April 30, 2023 17 minutos atrás, brucedeity disse: Não, você simplesmente sobrescreve a memória que já estava em uso com as novas informações. Estou testando bem para ver o quão viável é usar isso em um servidor em produção e até o momento o único ponto ruim é o povo continuar jogando sem atualizar o jogo Irado! Mas só do fato de atualizar tudo sem reniciar os serviços já é um caminho enorme, parabéns. Acho que ficaria legal colocar um alerta, tipo um Pop-up pro player sempre que houver uma nova atualização, com dois botões [Atualizar agora] [Continuar jogando] Mesmo se ele continuar no jogo sem atualizar ele não ver as modificações mas elas estão lá. E na próxima vez que ele abrir forçar a atualização Quote Link to comment Share on other sites More sharing options...
brucedeity Posted May 1, 2023 Author Share Posted May 1, 2023 Adicionado o exemplo de uma atualização do conteúdo do tasks.data Quote Link to comment Share on other sites More sharing options...
Cleiton Posted May 1, 2023 Share Posted May 1, 2023 top demais. Quote _________________________________________________________ Cleiton de Jessus Whatssapp: 21965688474 E-mail: [email protected] Link to comment Share on other sites More sharing options...
Bola Posted May 2, 2023 Share Posted May 2, 2023 para trabalhar com edições de .data, acho a ideia ótima e muito útil, já para servidores públicos, creio ser potencialmente perigosa se o trecho sobrescrito estiver também sendo usado em outro local gerando um erro de acesso de memória, uma solução conjunta seria implementar dai travas com spinlock para que quem deseja acessar ou alterar esse ponteiro precise aguardar outra região finalizar suas tarefas. 3 Quote Link to comment Share on other sites More sharing options...
Fulano Posted May 2, 2023 Share Posted May 2, 2023 Isso é bem legal cara, de verdade, mas como já foi dito acima, muito cuidado ao colocar isso em produção (se é que pretende), quando você trabalha diretamente na memória para atualizar arquivos isso pode trazer muitas dores de cabeça, e também pode causar vazamento de memória (derrubando os mapas em produção), ainda mais arquivos grandes como esses que contém todos os dados de itens do jogo. Recomendo você criar uma nova thread e também usar o spinlock a seu favor como foi dito acima , mas ainda acredito que não será algo definitivo, porque isso mexe muito com a estrutura, e os Inits na cgame foram feitos exatamente pra isso, para que seja processo de uma só vez ao iniciar. Fora isso, great job. 2 Quote Link to comment Share on other sites More sharing options...
brucedeity Posted May 2, 2023 Author Share Posted May 2, 2023 38 minutos atrás, Fulano disse: Isso é bem legal cara, de verdade, mas como já foi dito acima, muito cuidado ao colocar isso em produção (se é que pretende), quando você trabalha diretamente na memória para atualizar arquivos isso pode trazer muitas dores de cabeça, e também pode causar vazamento de memória (derrubando os mapas em produção), ainda mais arquivos grandes como esses que contém todos os dados de itens do jogo. Recomendo você criar uma nova thread e também usar o spinlock a seu favor como foi dito acima , mas ainda acredito que não será algo definitivo, porque isso mexe muito com a estrutura, e os Inits na cgame foram feitos exatamente pra isso, para que seja processo de uma só vez ao iniciar. Fora isso, great job. Sim, eu pretendo testar bastante antes de realmente pensar em usar isso em produção, até lá já vai me adiantar um bom tempo em ambiente de testes 2 Quote Link to comment Share on other sites More sharing options...
brucedeity Posted May 2, 2023 Author Share Posted May 2, 2023 1 hora atrás, Bola disse: para trabalhar com edições de .data, acho a ideia ótima e muito útil, já para servidores públicos, creio ser potencialmente perigosa se o trecho sobrescrito estiver também sendo usado em outro local gerando um erro de acesso de memória, uma solução conjunta seria implementar dai travas com spinlock para que quem deseja acessar ou alterar esse ponteiro precise aguardar outra região finalizar suas tarefas. Vou estudar um pouco sobre essa solução do spinlock, também estou pensando em um jeito de poder atualizar apenas coisas específicas em vez de querer atualizar tudo Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.