¿Cómo extender el período de tiempo de espera predeterminado en una aplicación flash?

StackOverflow https://stackoverflow.com/questions/91318

  •  01-07-2019
  •  | 
  •  

Pregunta

Tengo una aplicación escrita en flash (en realidad está escrita en Haxe y se ejecuta en SHWX, pero no importa aquí).Tengo una tarea bastante compleja que consume mucha energía de la CPU y, a veces, se ejecuta durante más de 15 segundos.Si eso sucede, tengo un error que dice 'un script se ha ejecutado por más tiempo que el período de tiempo de espera predeterminado de 15 segundos'. Y todo se bloquea.

Sé que puedo usar continuaciones para evitar que esto suceda, pero ¿hay alguna manera de extender ese "período de tiempo de espera predeterminado"?Es una herramienta de desarrollo, la capacidad de respuesta realmente no importa.

¿Fue útil?

Solución

Otra forma es vincular un molino swf-swf basado en -swf-lib y configure esta etiqueta ScriptLimits allí, haxe la reutilizará entonces.

Otros consejos

en CS3+ simplemente establece la propiedad "Límite de tiempo del script" del swf en el momento de la publicación; está en la pestaña flash de la configuración de publicación

Cuando pruebe su solicitud, tenga en cuenta la propiedad ScriptTrimeLimit.Si una aplicación tarda demasiado en inicializarse, Flash Player advierte a los usuarios que un script está causando que Flash Player se ejecute lentamente y le pide al usuario que aborte la aplicación.Si esta es la situación, puede establecer la propiedad ScriptTrimeLimit de la etiqueta a más de tiempo para que la aplicación Flex tenga suficiente tiempo para inicializarse.

sin embargo, el El valor predeterminado de la propiedad scripttimeLimit es de 60 segundos, que también es el máximo, por lo que solo puede aumentar el valor si lo ha establecido previamente en un valor más bajo.Raramente necesitas cambiar este valor.

Fuente: http://livedocs.adobe.com/flex/3/html/help.html?content=rendimiento_05.html

No estoy seguro de si hay algo más nativo para hacer esto, pero parece haber una comando que piratea el SWF para agregar una etiqueta ScriptLimits para extender el período de tiempo de espera.

Sugiero dividir su función en partes más pequeñas y distribuirlas en varios fotogramas.De esta manera puede mostrar una animación de progreso y la aplicación Flash no dejará de responder.Entonces, por ejemplo, si tiene que recorrer 1000 elementos, hace 100 en un cuadro, luego otros cien en el siguiente cuadro, etc., hasta que los haya procesado todos.No recomendaría hackear tu swf.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top