Libertonia
Portada · Todo · Software Libre · Desarrolladores · Comunidad · Internet · Tecnología · Meta · Diarios
Ver: Modo: Orden:
El Núcleo y las Versiones | 8 comentarios (8 temáticos, editoriales, 0 ocultos)
[OT]Qué casualidad (none / 0) (#2)
por Draco a las Sun Dec 12th, 2004 at 09:08:41 PM CET
(Información Usuario)

Es curioso pero este tema últimamente nos llevó de cabeza en el trabajo. Como bien has dicho, la resolución máxima en Windows por defecto son 10ms. El caso es que en Java tú puedes designar intervalos menores para dormir un thread. Lo que hace la JVM en ese caso, es realizar la llamada timeBeginPeriod(1L) y así poner la resolución a 1ms. Al salir del sleep llama a timeEndPeriod(1L) restaurando el valor inicial (que es un valor de sistema).

El problema es que estas funciones(que internamente llaman a NtSetTimerResolution), no deben ser thread-safe o tienen algún problema dependiendo del hardware porque su uso en aplicaciones multihilo puede hacer que el reloj del sistema se desincronize completamente. Doy fe de que el efecto depende totalmente del puesto, ya que una aplicación que no había dado problemas de ese tipo en año y medio comenzó a darlos al instalarla en un puesto nuevo.

En cualquier caso, ésto es algo que no creo que se pueda hacer en Linux en ejecución (si no recuerdo mal el número de interrupciones de reloj por segundo se define en la macro HZ). En Solaris parece que sí puede hacerse.
There are two major products to come out of Berkeley: LSD & BSD Unix. I don't believe this to be a coincidence.
[ Padre ]


El Núcleo y las Versiones | 8 comentarios (8 temáticos, editoriales, 0 ocultos)
Ver: Modo: Orden:
Menu
· crear cuenta
· FAQ
· búsqueda
· Fuentes de Noticias

Login
Nueva cuenta
Usuario:
Contraseña:

ecol Logo Powered by Scoop
Todas las Marcas Registradas y copyrights de esta página son propiedad de sus respectivos dueños.
Los comentarios son propiedad del que los escribe.
Los iconos de las noticias y el logotipo son propiedad de Javier Malonda.
El Resto © 2002 Escomposlinux.org y aledaños.

Puedes sindicar los contenidos de libertonia en formato RSS 1.0 y RDF 0.9. También se puede sindicar la cola de envíos pendientes de moderación.

El proyecto escomposlinux.org está dedicado a la memoria de tas

crear cuenta | faq | búsqueda