
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
O que há de errado com uma série normal de tangas? Por que as tangas....
Porque não sabemos de antemão quantos negócios a EA fará. Precisamos alocar a memória para a matriz com antecedência, mas não sabemos o quanto.
Portanto, tivemos que encontrar uma solução que fosse rápida e curta e que não ocupasse memória desnecessária.
Nem por isso.
...
Mais uma vez, imagine que em vez de cordel você usa uma classe para armazenar um conjunto dinâmico de gráficos - e você acha que isso é rápido?
Não conheço o funcionamento interno das funções das cordas, mas as medições de velocidade das funções mostram que são necessários menos de 100 microssegundos para encontrar e devolver um medjic de uma série de milhares de medjics.
Isso me parece muito rápido. É pouco provável que seja mais rápido.
Porque não sabemos de antemão quantos negócios a EA fará. Precisamos alocar a memória para a matriz com antecedência, mas não sabemos o quanto.
Por isso tivemos que encontrar uma solução que fosse rápida e curta e que não ocupasse memória desnecessária.
Sobre rápido. Medir a velocidade de extração de todos os 24000 mil medjics. Você ficará desagradavelmente surpreso.
Feito:
Seu exemplo não pode mais ser corrigido :)
O que acontece se você não tiver um número suficiente de filas?
Seu exemplo pode ter 32767 registros (transações), portanto tente comparar o último magik escrito e lido.
Mais uma vez, você não entende do que estamos falando. O sistema comercial (MetaTrader ou troca) atribui um número comercial. Pelo número do negócio não significa o número de série do negócio, mas precisamente o bilhete, devolvido pela funçãoHistoryDealGetTicket. Portanto, levando isto em consideração e modificando seu exemplo.
Não é um problema. Amanhã farei uma segunda versão que funcionará com o bilhete.
Esta variante também é conveniente no comércio.
Na contagem rápida. Medir a velocidade de recuperação de todos os 24.000.000 de medjits. Você ficaria desagradavelmente surpreso.
Bem, a qualquer momento, precisamos apenas de uma medjic, certo?
Extrair um medjack, acessar qualquer informação relacionada com o pedido.
Por que precisamos extrair 24.000 medjiks de uma só vez?
Que diabos estou fazendo aqui!? Com quem estou perdendo meu tempo? É melhor eu ir e tomar uma bebida mais forte.
p.s. Oh, sim, você tem mais um erro. Se MathRand na terceira chamada retornar, por exemplo, número 1000 e escrever _3_1000_, que tipo de medjic será encontrado para um acordo com o número ordinal 1000?Seu exemplo não pode ser corrigido agora :)
O que acontece se você não tiver um número suficiente de filas?
Seu exemplo pode ter 32767 registros (transações), portanto tente comparar o último magik escrito e lido.
Obrigado por indicar o limite do comprimento da linha.
Você pode começar a escrever a segunda linha. Depois a terceira e assim por diante... :)
Não conheço a implementação interna de funções de cadeia, mas uma medição de tempo de execução da função mostra que leva menos de 100 microssegundos para encontrar e retornar um medjic de uma cadeia total de milhares de medjics.
Eu acho que é muito rápido. Eu não acho que poderia ser mais rápido.
bem, em poucas palavras, uma seqüência de um caracter é umchar com algum código de 0 a 255 e pesa 1 byte... e é alocada apenas memória suficiente para caber 256 valores, 257 não caberão lá, ele mudará de volta para o primeiro.
Em qualquer página, cada caractere é um número de 0 a 255. então pegamos o número 10000000 - ele pesa 4 bytes, convertemo-lo para a string "10000000" então para cada caractere alocamos a memória como para um gráfico individual de 0 a 255... 8 bytes no total. Não há economia de memória em nenhum lugar.