Você precisa dos meus comentários aqui? Estou vinculando o código mql a um código externo e, paralelamente, analiso seus desenvolvimentos, encontro erros e não posso escrever aqui.
Não se esqueça de escrever explicitamente sobre bitness no artigo. Algo como: "código para x64" ou faça uma alteração nas macros para compilar para arquiteturas diferentes. A propósito, o que é sizeof(ULONG) no x64? Tenho alguns dados contraditórios. Por um lado, deve ser sempre 4, o modelo LLP64 no win sugere isso, e o msdn escreve: https://msdn.microsoft.com/en-us/library/windows/desktop/aa383751%28v=vs.85%29.aspx.
ULONG:<br/ translate="no">Um LONG sem sinal. O intervalo é de 0 a 4294967295 decimal. Esse tipo é declarado em WinDef.h da seguinte forma: typedef unsigned long ULONG;
mas não tenho certeza.
ENTÃO:
se eu estiver certo, você colocou ulong aqui para nada:
The data types supported by Windows are used to define function return values, function and message parameters, and structure members. They define the size and meaning of these elements. For more information about the underlying C/C++ data types, see Data Type Ranges. The following table contains the following types: character, integer...
Você poderia compartilhar para quais tarefas você vai usá-lo? Há até uma solicitação no artigo
Não consigo pensar em nenhum lugar onde isso seria conveniente para mim.
Estou no Linux, portanto, o ipc em geral se torna uma tarefa não trivial (comunicação entre o terminal no wine e o linuex exe). E o ipc em uma rede é uma forma universal. Conecto o script µl ao programa Linux via loopback (127.0.0.1) no mesmo computador. Basicamente, escrevi uma API do Linux para o terminal (o script µl lida com solicitações e envia dados de preço ou faz pedidos).
Em minha situação, essa é a melhor maneira de IPC que já experimentei. E não quero transferir meus desenvolvimentos para o µl - não quero ficar preso a uma linguagem específica, por uma questão de princípio.
Estou no Linux e, portanto, o ipc em geral se torna uma tarefa não trivial (comunicação entre o terminal no wine e o linuex exe). E o ipc pela rede é uma forma universal. Conecto o script µl ao programa Linux via loopback (127.0.0.1) no mesmo computador. Basicamente, escrevi uma API do Linux para o terminal (o script µl lida com solicitações e envia dados de preço ou faz pedidos).
Em minha situação, essa é a melhor maneira de IPC do que eu tentei. Não quero transferir meus desenvolvimentos para o µl - não quero ficar vinculado a uma linguagem específica, por uma questão de princípio.
Seria um ótimo artigo! Você obtém sua própria API universal de negociação para qualquer plataforma. E para uma plataforma, você escreve apenas um receptor/transmissor na API da própria plataforma.
E você pode escrever TS em qualquer idioma. Os programadores são assim!
O retorno é apenas em latência. É por isso que ele não funcionará para um tipo muito restrito de TC - e não há problema nisso.
O artigo é muito interessante e informativo. Pretendo usar a tecnologia de soquete para transferir do servidor VPS com terminais MT-5 para o servidor com informações do banco de dados MS-SQL sobre o status financeiro das contas no final do dia/semana/mês. Implementado na prática, mas a prática mostra que depois de algum tempo os pacotes começam a ser perdidos. E, a julgar pelos logs, a princípio a parte do servidor "para", e as partes do cliente nesse momento continuam a pensar que está tudo bem, porque o código da parte do cliente da verificação do tipo
não fornece nada. Ou seja, os clientes não conseguem diagnosticar a perda de conexão com o servidor antes de enviar e mesmo no momento do envio dos pacotes.
Talvez seja necessário adicionar alguma função como "CheckSocket" para a verificação preliminar da operacionalidade do soquete do servidor? Como implementá-la então?
mas no artigo.
Você precisa dos meus comentários aqui? Estou vinculando o código mql a um código externo e, paralelamente, analiso seus desenvolvimentos, encontro erros e não posso escrever aqui.
Tudo bem, os comentários são bem-vindos.
Estou enviando as edições de tipo para o artigo.
Usarei 64 bits nos exemplos
https://msdn.microsoft.com/en-us/library/windows/desktop/aa383751%28v=vs.85%29.aspx.
mas não tenho certeza.
ENTÃO:
se eu estiver certo, você colocou ulong aqui para nada:
Eu tenho um cliente TCP síncrono:
Não preciso de um servidor no µl, portanto, apenas um cliente. Testado superficialmente.
ZЫЫ: Obrigado pelo artigo.Tenho um cliente TCP síncrono desse tipo:
Você poderia compartilhar para quais tarefas vai usá-lo? Há até mesmo uma solicitação no artigo
Se você também tiver ideias de aplicativos, compartilhe-as nos comentários do artigo
Não consigo pensar em nenhum aplicativo em que isso seria conveniente para mim.
Você poderia compartilhar para quais tarefas você vai usá-lo? Há até uma solicitação no artigo
Não consigo pensar em nenhum lugar onde isso seria conveniente para mim.
Estou no Linux, portanto, o ipc em geral se torna uma tarefa não trivial (comunicação entre o terminal no wine e o linuex exe). E o ipc em uma rede é uma forma universal. Conecto o script µl ao programa Linux via loopback (127.0.0.1) no mesmo computador. Basicamente, escrevi uma API do Linux para o terminal (o script µl lida com solicitações e envia dados de preço ou faz pedidos).
Em minha situação, essa é a melhor maneira de IPC que já experimentei. E não quero transferir meus desenvolvimentos para o µl - não quero ficar preso a uma linguagem específica, por uma questão de princípio.
Estou no Linux e, portanto, o ipc em geral se torna uma tarefa não trivial (comunicação entre o terminal no wine e o linuex exe). E o ipc pela rede é uma forma universal. Conecto o script µl ao programa Linux via loopback (127.0.0.1) no mesmo computador. Basicamente, escrevi uma API do Linux para o terminal (o script µl lida com solicitações e envia dados de preço ou faz pedidos).
Em minha situação, essa é a melhor maneira de IPC do que eu tentei. Não quero transferir meus desenvolvimentos para o µl - não quero ficar vinculado a uma linguagem específica, por uma questão de princípio.
Seria um ótimo artigo! Você obtém sua própria API universal de negociação para qualquer plataforma. E para uma plataforma, você escreve apenas um receptor/transmissor na API da própria plataforma.
E você pode escrever TS em qualquer idioma. Os programadores são assim!
O retorno é apenas em latência. É por isso que ele não funcionará para um tipo muito restrito de TC - e não há problema nisso.
Implementado na prática, mas a prática mostra que depois de algum tempo os pacotes começam a ser perdidos. E, a julgar pelos logs, a princípio a parte do servidor "para", e as partes do cliente nesse momento continuam a pensar que está tudo bem, porque o código da parte do cliente da verificação do tipo
if(client==INVALID_SOCKET) StartClient(Host,Port);não fornece nada. Ou seja, os clientes não conseguem diagnosticar a perda de conexão com o servidor antes de enviar e mesmo no momento do envio dos pacotes.Talvez seja necessário adicionar alguma função como "CheckSocket" para a verificação preliminar da operacionalidade do soquete do servidor? Como implementá-la então?