Sospecho que las llamadas de subprocesos independientes (> 15) están teniendo un efecto negativo en el rendimiento. ¿Hay una mejor manera de obtener el tiempo del sistema en aplicaciones concurrentes?Cuellos de botella de rendimiento en llamadas concurrentes a System.currentTimeInMillis()
Respuesta
Sólo un pequeño consejo:
he leído de los ingenieros de Google y otros programadores que es mejor utilizar System.nanoTime. Por ejemplo joshua bloch
para el tiempo de intervalo, utilice siempre System.nanoTime con preferencia a System.currentTimeMillis
No responde la pregunta. Además, incluso de acuerdo con su cotización, System.nanoTime es preferible para la temporización de intervalo, no se menciona para qué está utilizando OP la hora del sistema. El tiempo de intervalo puede no ser aplicable aquí. –
Tal vez no responda la pregunta directamente, pero creo que ya otros respondieron la pregunta, así que solo estaba dando un consejo que leí. – Alfred
http://www.techper.net/2008/08/10/systemcurrenttimemillis-systemnanotime-and-their-resolution/ timeinMillis tiene problemas con la granularidad de MS windows –
Si realmente es un problema, puede hacer que un hilo de fondo almacene la hora actual en un volatile
. O solo llámalo con menos frecuencia.
+1 - Definitivamente hay algo un poco raro acerca de una aplicación que tiene que hacer frecuentes llamadas a 'System.currentTimeMillis'. –
- 1. Encontrar cuellos de botella en la aplicación
- 2. Cómo encontrar cuellos de botella de rendimiento en el código de C++
- 3. ¿Cómo puedo encontrar los cuellos de botella de rendimiento en mi aplicación Ruby?
- 4. Los 10 principales cuellos de botella de rendimiento de SQL Server
- 5. Encontrar cuellos de botella de tiempo de enlace
- 6. Cómo crear un perfil de cuellos de botella OpenMP
- 7. Problemas concurrentes de rendimiento de solicitud web
- 8. Herramienta para encontrar los cuellos de botella de la base de datos en el servidor sql
- 9. ¿Cuáles son las formas de encontrar cuellos de botella en una aplicación web?
- 10. ¿Qué contadores de perfmon son útiles para identificar los cuellos de botella de ASP.NET?
- 11. Rendimiento y cuello de botella de Zend_Search_Lucene?
- 12. ¿Qué es el cuello de botella de rendimiento de compilación de C++?
- 13. He golpeado el cuello de botella de rendimiento DB, ¿dónde está ahora?
- 14. Performance cuello de botella Url.Action - ¿puedo solucionarlo?
- 15. creando subproyectos en botella
- 16. Rendimiento de Javascript: ¿cómo comprobar qué está ralentizando la página?
- 17. El rendimiento de XPath.evaluate se ralentiza (absurdamente) en llamadas múltiples
- 18. Conceptos erróneos sobre el cuello de botella de rendimiento más peligroso
- 19. Cómo comenzar a utilizar el perfil de rendimiento WCF
- 20. Grupo de conexiones de bases de datos concurrentes en Haskell
- 21. __get/__ set/__ preguntas de rendimiento de llamadas con PHP
- 22. botella en el servidor de cherrypy + ssl
- 23. ¿Cuál es el rendimiento de la http.request de Node.js? ¿Cuántas solicitudes concurrentes puede manejar?
- 24. C# Lista de preguntas concurrentes
- 25. Botella y Json
- 26. Número máximo de HttpWebRequests concurrentes
- 27. Herramientas de análisis de perfil/rendimiento de perfil para Windows CE/Mobile
- 28. Solicitudes concurrentes en Appengine Python
- 29. ¿Problemas de rendimiento con llamadas repetidas a ConfigurationManager.AppSettings para obtener valores de aplicación?
- 30. ¿Detecta modificaciones concurrentes?
yo no lo creo, la mayoría de los sistemas operativos proporcionan un buen soporte para este tipo de función y está probablemente implementado como un método nativo. ¿Por qué culpas a este método por tus problemas de rendimiento? –
¿Qué perfil ha hecho que muestra que esta función es el problema? –