Necesito modificar el intervalo de tiempo de espera de un GLib mientras está en ejecución. ¿Es eso posible? Eché un vistazo al código fuente y me parece posible, pero se requiere el uso de algunas funciones no públicas de los componentes internos de GLib. ¿Debería volver a implementar GTimeoutSource o hay una forma de hacerlo?Tiempos de espera variables en GLib
6
A
Respuesta
3
En su función de tiempo de espera, que podría volver a agregar la función con el nuevo intervalo de tiempo de espera y luego regresar FALSE
para eliminar el tiempo de espera con el viejo intervalo:
gboolean
my_timeout_function(gpointer data)
{
// do stuff
// ...
if(need_to_change_interval)
{
g_timeout_add(new_interval, (GSourceFunc)my_timeout_function, data);
return FALSE;
}
return TRUE;
}
Cuestiones relacionadas
- 1. Tiempos de espera del navegador
- 2. Tiempos de espera WCF Services
- 3. SQL Azure: más tiempos de espera intermitentes
- 4. Pruebas unitarias con tiempos de espera
- 5. Cómo usar concurrent.futures con tiempos de espera?
- 6. ¿Debería solicitar tiempos de espera en bloqueos en .NET?
- 7. Formas de hacer tiempos de espera en Perl?
- 8. Tiempos de espera de sesión en PHP: mejores prácticas
- 9. libcurl atrapado en los tiempos de espera de POLLIN
- 10. Poniendo tiempos de espera en las declaraciones preparadas
- 11. Viendo todos los tiempos de espera/intervalos en javascript?
- 12. Evitar los tiempos de espera del socket en SQLAlchemy
- 13. Tiempos de espera de sesión de Silverlight, RIA y ASP.Net
- 14. ¿Se registran los tiempos de espera de SQL Server?
- 15. Los tiempos de espera de WCF son una pesadilla
- 16. ¿Cómo contar los tiempos de espera de javascript activos?
- 17. SKProductsRequest - cómo manejar los tiempos de espera/errores de conexión?
- 18. ¿Por qué WCF no admite tiempos de espera de servicio?
- 19. Mejores prácticas para los tiempos de espera del servicio web
- 20. MongoDB Cursor Tiempos de espera mientras realiza muchas escrituras
- 21. Tiempos de espera de ReportViewer a pesar de la configuración de tiempo de espera
- 22. rubí tiempos de espera y comandos del sistema
- 23. Linux glib necesita pkg-config y pkg-config necesita glib?
- 24. ¿Cómo configurar glib en Makefile?
- 25. Tamaños y tiempos de espera en el contrato de servicio de transmisión en WCF
- 26. glibc, glib y gnulib
- 27. ¿Los tiempos de espera iguales se ejecutan en orden en Javascript?
- 28. Múltiples tiempos de espera simultáneos de conexión SQL en multiproceso de Windows Servicio
- 29. Detalles de conexión y los tiempos de espera en un cliente de servicios web Java
- 30. instalando gtk y glib
Sí, esto es lo que yo pensaba, pero yo estaba buscando una mejor solución porque g_timeout_add crea un nuevo GSource (GTimeoutSource, de hecho) y al regresar FALSE destruye el GSource actual que estás usando cuando realmente solo quieres modificar el intervalo, no destruir y recrear todo el GTimeoutSource. – Matachana
No creo que sea un problema de rendimiento notable. Los desarrolladores de Glib generalmente tienen una buena razón cuando no exponen un interno en su API. – ptomato