[Include] Bini - Versão de Impressão +- Portal SAMP (https://portalsamp.com) +-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5) +--- Fórum: Lançamentos (https://portalsamp.com/forumdisplay.php?fid=26) +---- Fórum: Includes (https://portalsamp.com/forumdisplay.php?fid=27) +---- Tópico: [Include] Bini (/showthread.php?tid=813) |
Bini - Levi.M - 24/02/2021 Mais um sistema recuperado da Fórum SA-MP. Créditos ao ipsBruno. Bini 4
Após algumas semanas de desenvolvimento da nova versão de Bini. Finalmente consigo acaba-la. A nova versão de Bini não conta com muitas alterações, exceto a engine de manipulação de arquivos na memória. Desta vez utiliza memória cache mais avançada usando Setproperty e Getproperty! Por mais que não seja necessário o uso de INI_Save. Aconselha o USO DA MESMA, pois em caso de crashs ou eventuais bugs no seu servidor decorrente em outros fatores, alguns arquivos podem ser perdidos !! Velocidade Com esta nova engine, a velocidade foi bastante aprimorada. O que já era rápido ficou mais rápido ainda. Código PHP: [00:57:47] Bini -> write 3304 ms - read 32 ms - read/write 3336 ms A função write apesar de ser mais rápida que todos os outros sistemas de arquivos ainda precisa de alguns ajustes de velocidade e estabilidade, então eventuais atualizações estão para surgir Código usado para teste de velocidade: Código PHP: main() { Usando Para usar Bini é bastante simples! Basta fazer o seguinte: Escrevendo: Números Código PHP: INI_WriteInt("arquivo.ini", "key", valor); Textos Código PHP: INI_WriteString("arquivo.ini", "key", "valor"); Lendo valores: Números Código PHP: INI_ReadInt("arquivo.ini", "key"); Textos Código PHP: INI_ReadString("arquivo.ini", "key"); deixe Código PHP: public OnFilterScriptExit() { ** Importante - Se você tem arquivos escritos por DOF2 ou Y_Ini este sistema não será compatível pois meu sistema usa o método formal para escrita de escrita em arquivos ini, sem espaço entre as keys Código: key=value e não Código: key = value https://en.wikipedia.org/wiki/INI_file Porém é TOTALMENTE compatível com Dini e outros sistemas conhecidos. Funções disponíveis: Código PHP: // Funções Atuais: Download -> https://pastebin.com/gjEJMnH5 Com está velocidade é permitido que você possa colocar em até 50 escritas/leituras em OnPlayerUpdate. Salve em bini.inc por favor. Arquivo não salvando Caso for um único arquivo, veja se o servidor não está sendo fechado corretamente. Quando você não fecha por RCON EXIT o OnGameModeExit/FilterScriptExit não são chamados e logo INI_Exit também não é !! Caso for vários arquivos tente aumentar o valor max_lines_file para acima de 999 Exemplo: Código PHP: #define max_lines_file 5000 Servidor crashando Certifique-se se antes de usar algum arquivo INI_Open/INI_READ o arquivo existe. Use Código PHP: if(fexist(#arquivo.ini)) // o arquivo existe Ocupando muito AMX Nem sempre o que ocupa muito amx é lento. Bini usa um sistema avançado de cache, onde tudo é registrado no amx em tempo real. Mas é tudo registrado no AMX, não ocupa nada de memória do seu computador. Só ocupará memória se de alguma forma outros fatores externos a Bini ultrapassarem isto. https://pt.wikipedia.org/wiki/Cache Desenvolvido por Bruno da Silva |