Errores, fallos, preguntas - página 2378

 
Renat Fatkhullin:

1. Esta es la interfaz.

Las funciones TLS son auxiliares para soportar casos complejos. No hay problema con la configuración de SocketTimeouts - estos son los mejores para usar.


2. Realiza su función correctamente.

Al parecer, no conoce los problemas de detección de las conexiones TCP rotas. Es bastante difícil (requiere muchos recursos a costa de llamadas adicionales) detectar que se garantice que una conexión se rompe correctamente. Todas las implementaciones de la red sufren este problema.

Nuestra implementación de SocketIsReadible es lo suficientemente inteligente como para tener un detector de ruptura. Cuando detecta un 0 bytes limpio, hace el trabajo extra de comprobar que el socket está completo:

Dado que devuelve el número de bytes sin una bandera de terminación, emite 1 byte de modo que un intento de lectura posterior/imminente de SocketRead normalmente devolverá un error.

¿Por qué es esto correcto? Porque la mayor parte del código lo escriben los programadores de esta manera:

el resultado real de la operación se comprueba en un intento de lectura directa.


3. necesita hacer SocketIsReadible() antes de la lectura real, si no conoce el tamaño exacto de los datos a leer.

El bind SocketisReadible/SocketRead te da la posibilidad de no perder el control (minimizar a casi cero la pérdida de control) sobre el flujo de ejecución de tu programa. Esto evita que se produzcan tiempos muertos en la red.

Sí, unas cuantas líneas más de código, pero no perderás el control ni un milisegundo(aproximadamente). Tú decides qué hacer en los intervalos sin datos de la red.


4. explicada en el segundo párrafo.

Emitir 1 para la estimulación de la lectura y la salida como un error de lectura.



Sus conclusiones son erróneas.

Esta es la naturaleza del transporte TCP/IP, donde no hay ninguna garantía. Ahí también se puede entrar en agujeros negros de red en los filtros/firewalls cuando no hay parte de señalización TCP. El control del tiempo de espera y del flujo de datos le permite detectarlos y terminar las conexiones usted mismo.

Hemos dado una interfaz de acceso crudo/directo a las funciones de red, incluyendo las implementaciones de TLS. Si los utilizas, eres tú quien debe envolver adecuadamente las funciones raw en un manejador SocketIsReadible/SocketRead seguro/controlado.

Si quieres hacer peticiones de alto nivel sin tener que pensar en las minucias, existen las funcionesWebRequest. Todas las protecciones están incorporadas.

Muchas gracias por la respuesta proporcionada.

Sin embargo, en mi humilde opinión:
1. Si las funciones SocketRead y SocketTlsRead realizan la misma acción, entonces deberían tener las mismas interfaces adaptadas, por todos los medios.

2. a. Sí, no sé nada acerca de los problemas con la detección de la ruptura de la conexión TCP;
b) la función SocketIs*, de acuerdo con las recomendaciones de nomenclatura de funciones, se espera que produzca un resultado True/False, pero no uint; (¿Dónde has leído eso? Si no me equivoco en los trabajos de Scott Meyers en 2014).
c) Gracias por explicar por qué SocketIsReadible puede devolver 1 si no se ha establecido ninguna conexión TCP (no hay Internet de antemano o el dominio no se ha añadido a la lista permitida).
Por favor, añada también una descripción adecuada a la documentación.

3,4) Entendido, gracias.

 

Hola a todos.

Por favor, ayuda en la solución de un problema con la versión 1940 del probador de MT5 - sin contar el beneficio. Tengo 3 versiones de MT5 (desde el broker y descargadas desde el sitio del fabricante), instaladas en diferentes PCs, todos los resultados son los mismos - sin contar con Profit, sin trabajar probando y optimizando.

He grabado un vídeo para ilustrarlo.


 

K-Meleon no muestra el texto en los mensajes

K-Meleon :: Главная
K-Meleon :: Главная
  • kmeleon.geckoworld.ru
На этой неделе суммарное число загрузок всех версий Pro-сборки K-Meleon (75-76 Pro) по официальным ссылкам превысило 100 000! Конечно не каждая загрузка - это новый пользователь, но ведь наш браузер раздается и на торрентах, а также разошелся по другим площадкам, откуда его тоже качают. Таким образом, мы можем уверенно говорить о том, что наше...
 
fxsaber:

K-Meleon no muestra el texto en los mensajes

Es un navegador muerto, probablemente no tiene sentido intentar que funcione...

 
Vladimir Pastushak:

Es un navegador muerto, así que probablemente no tenga sentido hacer nada para él...

No requiere de recursos.

 
fxsaber:

No exige recursos.

Sí, se puede ver eso, lo he probado en algunos sitios, tiene muchos problemas...

Pruebe la versión beta de Vivaldi, práctico, rápido, muchas facilidades, muchas configuraciones, soporta aplicaciones de chrome....

 
Cuando intento actualizar mi script en kodobase sólo obtengo un error
main file not found

el único archivo MQ5 está en esta ruta

MQL5\Scripts\fxsaber\

¿Cómo solucionarlo?


SZZ muestra el estado "Verificado por el moderador".

Puse el archivo mq5 sólo en Scripts - la misma reacción.
 
fxsaber:
Cuando intento actualizar mi script en kodobase sólo obtengo un error

el único archivo MQ5 está en esta ruta

¿Cómo solucionarlo?


SZZ muestra el estado "Verificado por el moderador".

SZY puse el archivo mq5 simplemente en Scripts - misma reacción.
No escriba su carpeta en la ruta.
 
Vladimir Karputov:
No escriba su propia carpeta en la ruta.

La elección de la opción "por defecto" ha funcionado. Pero sólo esta opción es errónea.

Es muy poco razonable poner todos los scripts en una sola carpeta. Al menos debería haber una sistematización por subcarpetas.

 
fxsaber:

La elección de la opción "por defecto" ha funcionado. Pero sólo esta opción es errónea.

Es muy poco razonable poner todos los scripts en una sola carpeta. Debería haber una sistematización al menos por subcarpetas.

Recientemente he preguntado sobre las carpetas individuales, la respuesta fue: "todo en un montón" y no cambiará todavía.
Si lo necesito mucho para los inluders, añado "KVN" al nombre del archivo.