Desta vez, o componente StringTempletReplet.dll atualizou alguns algoritmos. Depende principalmente mais dos valores em variáveis estáticas na memória.
Isso foi feito sem alterar o modelo. Modelos de cache, delegados de cache e dados de análise de tags de cache. Mas isso consumirá mais memória.
Para alterar dinamicamente o modelo, a hora do arquivo deve ser detectada a cada vez. Gastei muito tempo nisso. Talvez no futuro, a função de alterar modelos dinamicamente deva ser removida e apenas uma interface que notifique a classe de modelo sobre qual arquivo de modelo deve ser relido.
Esta página foi cancelada (RetuenString.aspx - aceita a string da tag e retorna o resultado da análise)
Afinal, tags não constituem uma linguagem de script. Esta função não faz sentido.
Algumas pessoas dizem que não sabem como usar esta classe de modelo. Vamos falar brevemente sobre isso aqui:
A principal função da classe de modelo não é ler o modelo de página inteiro. Principalmente para ler o modelo de fragmento de página. Basta ler os fragmentos, analisá-los e exibi-los.
Em sites web2.0, como desenvolvimento de blogs. Página para skins definidas pelo usuário. Em outras palavras, a página estática completa desempenha um papel importante na atualização do sistema de notícias.
A funcionalidade das tags é estendida por meio de funções de análise de tags. Portanto, a velocidade da classe de modelo não é apenas a velocidade de execução do próprio componente StringTempletReplet.dll. Adicione também o tempo de execução da função de análise de tags. A função de análise de tags fornecida no meu exemplo retorna apenas uma string simples.
Apenas para nomeá-lo por conveniência. Tudo o que a classe de modelo faz é fornecer um estágio. E tente tornar o tempo de execução da classe de modelo mais rápido. Quanto a saber se a função de análise de tags é sempre executada. Quanto tempo leva. É uma questão de usar pessoas.
A classe de modelo de substituição regular também foi escrita. Mas eu mesmo testei e realizei análise de posicionamento de tags em uma string com comprimento de mais de 2 milhões. É mais de 8 vezes mais lento que o posicionamento do ponteiro. Quando o comprimento da sequência do modelo continua a diminuir. Talvez a diferença diminua com o tempo. Mas mesmo que os dois tempos de posicionamento da etiqueta sejam iguais. De acordo com a imutabilidade das strings, a substituição contínua de uma string produzirá uma nova string. Consome muitos recursos.
Business.cs pode ser colocado na camada UI ou na camada lógica. Basta herdar a classe FunctionList. Para herdar esta classe, basta substituir o construtor estático. Estabeleça a correspondência entre o rótulo e a função de execução do rótulo no construtor estático.
Na verdade, um rótulo de execução foi escrito na versão anterior. Basta adicionar a marca "execution_" antes do nome do rótulo
{$execution_labelname:parâmetro1:parâmetro2:parâmetro3::personagem10$}
Isso elimina a necessidade de substituir o construtor estático. É realizado através da reflexão. Mas a velocidade é muito lenta. Mais tarde foi cancelado. Afinal, a velocidade é crítica para classes de modelos.
Não tenho um local fixo para download de todos. No passado, os arquivos compactados eram usados como imagens GIF. Passe para o seu perfil NetEase. Mais tarde, porém, a NetEase inspecionou as fotos. Torne impossível que todos parem. Estou procurando um novo local. A localização da imagem irá variar.
agora é