{"id":105,"date":"2009-12-04T11:27:29","date_gmt":"2009-12-04T10:27:29","guid":{"rendered":"http:\/\/www.brainrage.com\/?p=105"},"modified":"2009-12-04T11:27:29","modified_gmt":"2009-12-04T10:27:29","slug":"no-puedo-cerrar-el-administrador-de-tareas-y-esta-parpadeando-todo-el-rato","status":"publish","type":"post","link":"https:\/\/www.brainrage.com\/?p=105","title":{"rendered":"No puedo cerrar el administrador de tareas&#8230; y est\u00e1 parpadeando todo el rato."},"content":{"rendered":"<p>Este es un bug que tiene tanto Windows Vista como Windows 7, y que afecta sobretodo si tienes configurado el administrado rde tareas para que se oculte al estar minimizado:<\/p>\n<p>Si intentas mostrar el administrador de tareas mientras el equipo est\u00e1 muy\u00a0ocupado, y al\u00a0no aparecer intentas por segunda vez ejecutar el administrador de tareas, lo que consigues es que\u00a0cuando el equipo vuelve a responder, se\u00a0ejecuten dos (o m\u00e1s)\u00a0instancias del administrador de tareas, que se ponen a pelearse para ver qui\u00e9n ocupa el icono del \u00e1rea de notificaci\u00f3n. Como resultado, vemos el cuadradito verde del \u00e1rea de notificaci\u00f3n parpadeando como si pasara del 0 al 100% r\u00e1pidamente, y no podemos restaurarlo ni cerrarlo, incluso puede que se quede el\u00a0men\u00fa contextual del icono del \u00e1rea de notificaci\u00f3n colgado sin responder.<\/p>\n<p>Esta situaci\u00f3n es comprometida, ya que si tienes\u00a0el administrador de tareas\u00a0configurado en \u00abocultar al minimizar\u00bb\u00a0no puedes cerrarlo ya que no puedes usarlo&#8230; \u00bfo si?<\/p>\n<p>La soluci\u00f3n al problema la encontramos en la utilidad de l\u00ednea de comandos que viene de serie con Windows llamada TaskKill.exe.<\/p>\n<p>Esta utilidad permite finalizar una tarea des de la l\u00ednea de comandos. En el caso que nos ocupa, para arreglar el problema con los administradores de tareas, tenemos que seguir los siguientes pasos:<\/p>\n<ul>\n<li>Abrir una l\u00ednea de comandos pulsando sobre el bot\u00f3n de inicio y escribiendo CMD y pulsando enter.<\/li>\n<li>En la ventana de la l\u00ednea de comandos escribimos TASKKILL \/IM TASKMGR.EXE y pulsamos enter de nuevo.<\/li>\n<\/ul>\n<p>Autom\u00e1ticamente uno de los administradores de tareas se cerrar\u00e1 y har\u00e1 que el otro funcione correctamente. Si a\u00fan no se ha solucionado, podemos repetir el segundo paso hasta que se solucione.<\/p>\n<p>Y para los que quieran saber m\u00e1s, a continuaci\u00f3n dejo un par de notas t\u00e9cnicas (muy t\u00e9cnicas):<\/p>\n<p>Este problema tambi\u00e9n ocurre en Windows XP; pero en ese caso lo que ocurre es que se crean m\u00faltiples iconos en el \u00e1rea de notificaci\u00f3n (uno por cada instancia),\u00a0pero en este caso\u00a0se pueden cerrar sin ning\u00fan problema, ya que cada instancia responde correctamente a su icono del \u00e1rea de notificaci\u00f3n correspondiente.<\/p>\n<p>La raz\u00f3n de porqu\u00e9 ocurre esto, es por la forma en que una aplicaci\u00f3n detecta si ya se est\u00e1 ejecutando. Para ello, debemos saber qu\u00e9 es un sem\u00e1foro:<\/p>\n<p>Un sem\u00e1foro es una variable global del sistema operativo, que una vez establecida seguir\u00e1 existiendo hasta que sea liberada o hasta\u00a0que el proceso que la ha\u00a0creado se termine.<\/p>\n<p>El comportamiento habitual de una aplicaci\u00f3n de la que s\u00f3lo se quiere o debe tener una instancia en ejecuci\u00f3n, es el siguiente: Cuando\u00a0se inicia se comprueba si\u00a0existe\u00a0un sem\u00e1foro con un nombre concreto. Si el sem\u00e1foro\u00a0existe, la aplicaci\u00f3n se termina; si no existe, se crea inmediatamente para que si se intenta iniciar otra instancia de la misma aplicaci\u00f3n se detecte el sem\u00e1foro y no permita continuar iniciando.<\/p>\n<p>El problema ocurre cuando el equipo est\u00e1 muy ocupado (todos los\u00a0n\u00facleos de la CPU al\u00a0100%) y el sistema operativo carga la aplicaci\u00f3n, pero la ejecuta tan despacio, que da tiempo a volver a iniciarla antes de que se cree el sem\u00e1foro. Hay que tener en cuenta que no se genera ninguna excepci\u00f3n si se crea un sem\u00e1foro con un nombre que ya exist\u00eda.<\/p>\n<p>Y si dominas de estos temas, te estar\u00e1s preguntando&#8230; \u00bfc\u00f3mo puede ser que no le de tiempo a ejecutar las primeras l\u00edneas de c\u00f3digo de\u00a0la aplicaci\u00f3n y si le de tiempo a cargarla de nuevo? La respuesta es que en los sistemas operativos modernos, cuando ejecutamos una aplicaci\u00f3n (o cargamos una biblioteca), lo primero que se hace es comprobar si ya se ha ejecutado anteriormente; en ese caso no volver\u00e1 a cargar\u00a0desde disco y a la memoria; sino que aprovechar\u00e1 el espacio en memoria que ya ocupa, y crear\u00e1 un nuevo espacio para sus necesidades de memoria de ejecuci\u00f3n. De esta forma, si el c\u00f3digo de una aplicaci\u00f3n ocupa 5Mb, y necesita 2Mb de memoria para su funcionamiento, si lo cargamos dos veces no necesita 5+2+5+2=14Mb; sino que s\u00f3lo necesita 5+2+2=9Mb; ahorrando memoria y mejorando la velocidad de trabajo del sistema. Esta mejora de velocidad al iniciar la segunda y sucesivas veces es la que permite que ocurra el bug de que una aplicaci\u00f3n se ejecute varias veces a\u00fan cuando hay c\u00f3digo para comprobar que eso no ocurra.<\/p>\n<p>Este problema se podr\u00eda solucionar de varias formas; los ejecutables podr\u00edan tener una se\u00f1al que indicara al sistema operativo que ese binario no se puede ejecutar m\u00e1s de una vez; o se podr\u00eda generar una excepci\u00f3n si se intenta crear un sem\u00e1foro con un nombre que ya existe; sea como sea el caso del administrador de tareas es como mucho molesto; pero se de varios casos en los que si falla la comprobaci\u00f3n de que s\u00f3lo se est\u00e1 ejecutando una instancia de un proceso, podr\u00eda tener consecuencias catastr\u00f3ficas.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Este es un bug que tiene tanto Windows Vista como Windows 7, y que afecta sobretodo si tienes configurado el administrado rde tareas para que se oculte al estar minimizado: Si intentas mostrar el administrador de tareas mientras el equipo est\u00e1 muy\u00a0ocupado, y al\u00a0no aparecer intentas por segunda vez ejecutar el administrador de tareas, lo&hellip; <a class=\"more-link\" href=\"https:\/\/www.brainrage.com\/?p=105\">Seguir leyendo <span class=\"screen-reader-text\">No puedo cerrar el administrador de tareas&#8230; y est\u00e1 parpadeando todo el rato.<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11,5],"tags":[],"class_list":["post-105","post","type-post","status-publish","format-standard","hentry","category-software","category-tecnologia","entry"],"_links":{"self":[{"href":"https:\/\/www.brainrage.com\/index.php?rest_route=\/wp\/v2\/posts\/105","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.brainrage.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.brainrage.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.brainrage.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.brainrage.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=105"}],"version-history":[{"count":1,"href":"https:\/\/www.brainrage.com\/index.php?rest_route=\/wp\/v2\/posts\/105\/revisions"}],"predecessor-version":[{"id":108,"href":"https:\/\/www.brainrage.com\/index.php?rest_route=\/wp\/v2\/posts\/105\/revisions\/108"}],"wp:attachment":[{"href":"https:\/\/www.brainrage.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=105"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.brainrage.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=105"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.brainrage.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=105"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}