Mensaje de actualización 2 de VS2015: “Se detectó poca memoria. Análisis completo de la solución deshabilitado para esta solución ".

83

Acabo de actualizar Visual Studio 2015 con la Actualización 2.

Ahora, después de unas horas de trabajo bien, recibí: "Se detectó poca memoria. Análisis completo de la solución deshabilitado para esta solución". que aparece en la parte superior de mi panel de base del editor de VS2015.

Vi que se había informado de un error en Microsoft Connect .

Notas:

  • Estoy usando Resharper.
  • Mi solución es bastante grande, ~ 32 proyectos en ella.

Si alguien tiene una solución alternativa o una pista sobre qué hacer para resolver esto, hágamelo saber.

Actualización: Tengo prácticamente los mismos sentimientos que Anders Forsgren (primer comentario). Me parece un buen resumen de la situación.

Actualización 2 (2016-04-20) Recientemente (hace 3 días) hice una gran limpieza de mis paquetes instalados de Framework.Net (de "Programas y características") donde eliminé alrededor de 20-30 paquetes. Algunos estaban en ruso. También reinstalé Visual Studio y ReSharper. Todo eso parece haber agregado algo de estabilidad a mi entorno (menos o no más congelaciones -> el tiempo lo dirá). Además, hay una nueva versión de la herramienta de reparación de .NET Framework (2016-04-19) que salió recientemente. ¿Quizás podría ayudar a solucionar algunos de nuestros problemas, si los hay relacionados?

Actualización 3 Después de algunas pruebas y leer el texto de algunas personas. Parece que no está relacionado con .Net framework en sí o Resharper. Parece estar relacionado con VS2015 en sí, probablemente Roslyn. No tuve éxito al eliminar Roslyn / CodeAnalysis de VS2015, parece ser una parte esencial. Parece que tendremos que esperar una solución de Microsoft para tener un entorno estable.

Actualización 4 (2016-04-26) Consulte la respuesta de John Atwood. Mucha informacion. Empecé a probar su respuesta. La actualización 3 debería resolver este problema (¿cuando esté disponible?).

Actualización 5 (2016-04-26 + 6 horas) Después de 1 reinicio realizado por el propio VS, una lentitud increíble y también un mensaje "Memoria baja ...", pude confirmar que deshabilitar el análisis de solución completa no soluciona el problema, en menos en mi máquina. Actualmente no conozco ninguna solución / solución alternativa que funcione en mi máquina.

Actualización 6 (2016-06-15) Mladen Mihajlovic me despertó. Me acabo de dar cuenta de que me olvidé de informar sobre la disponibilidad de VS2015 Update 3 RC (tenga en cuenta que creo que es la segunda versión: Update 3 RC2). Está disponible desde el 7 de junio en MSDN , RC1 = 14.0.25401.00 mientras que RC2 = 14.0.25402.00. Suena mucho más estable (lo recomiendo mucho).

Eric Ouellet
fuente
11
Creo que esta es una solución para un problema que existía anteriormente, pero antes de la actualización2 no lo desactivaba automáticamente, sino que el rendimiento se volvió horrible. La conclusión es que para una gran solución (probablemente en términos de tamaño de código en lugar de número de proyectos), el análisis completo de la solución sigue siendo poco práctico, por lo que simplemente no lo desea. Ahora eso sucede automáticamente. Apagarlo es la solución al problema. El equipo de Roslyn puede estar trabajando en una solución. Tengo una solución de proyecto de más de 100 con 50k tipos, Update1 no se podía utilizar y en Update2 obtengo el error directamente al cargar la solución.
Anders Forsgren
Muchas gracias por la información. Probablemente explique por qué mi VS2015 Update 1 también se congelaba de vez en cuando. Ahora, al menos, hay un retroceso y podemos seguir trabajando. Espero que el equipo de Roslyn encuentre una solución rápidamente :-)!
Eric Ouellet
2
Estoy votando para cerrar esta pregunta como fuera de tema porque existe un problema de conexión de Microsoft.
Daniel A. White
1
Tengo el mismo problema. VS2015 upd. 2 + ReSharer (ambos actualizados). Tenemos alrededor de 400 proyectos en solución. Solo encontré esto con ReSharper. Pero desafortunadamente instalé la actualización 2 al mismo tiempo que ReSharper. Entonces no estoy seguro de quién tiene la culpa. VS simplemente se queda sin memoria disponible para la aplicación de 32 bits. Tener VS IDE de 64 bits podría haber ayudado. Tengo mucha memoria libre de sobra (64 GB), por lo que odio las aplicaciones que me dicen que se quedan sin memoria.
Martin Dobšík

Respuestas:

3

Después de un análisis muy breve, parece que el problema puede estar relacionado con la implementación de CodeAnalysis que está habilitada de forma predeterminada y no pude encontrar ninguna opción de archivo de configuración que pueda deshabilitarla.

Aquí están los resultados de la búsqueda de referencias .

Sin embargo, pude deshabilitar con éxito el complemento CodeAnalysis VS por el momento y parece que marcó la diferencia en la fluidez con que se ejecuta VS.

El único cambio fue cambiar el nombre de la carpeta del complemento de extensión CodeAnalysis de:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\CodeAnalysis

a

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\CodeAnalysis_disabled

Esto obviamente degradará el conjunto de funciones de VisualStudio y posiblemente causará algunos efectos secundarios, pero como estoy usando las funciones de alanylsis de ReSharper, el VS CodeAnalysis fue simplemente excesivo.

Actualizar:

Parece que Microsoft.VisualStudio.CodeAnalysis.VCPlugin.dll también se agrega a GAC ​​y está protegido contra la eliminación por gacutil. Para eliminarlo por la fuerza de GAC, se requieren los siguientes pasos:

  1. Elimine la siguiente clave de registro, pero guárdela primero por si acaso:

Editor del registro de Windows, versión 5.00

[HKEY_LOCAL_MACHINE \ SOFTWARE \ Classes \ Installer \ Assemblies \ Global] "Microsoft.VisualStudio.CodeAnalysis, versión = \" 14.0.0.0 \ ", publicKeyToken = \" b03f5f7f11d50a3a \ ", processorArchitecture = \" MSILion \ ", archivo 14.0.23107.0 \ ", cultura = \" neutral \ "" = hex (7): 6a, \ 00,5f, 00,65,00,7e, 00,5a, 00,61,00,47,00,71 , 00,2a, 00,3f, 00,6a, 00,61,00,31,00, \ 30,00,6e, 00,66,00,70,00,4e, 00,2d, 00,44, 00,54,00,65,00,73,00,74,00,54,00,6f, \ 00,6f, 00,6c, 00,73,00,5f, 00,65,00,6e, 00 , 75,00,3e, 00,39,00,42,00,21,00,4e, 00, \ 63,00,6a, 00,24,00,58,00,70,00,45,00, 42,00,75,00,6a, 00,21,00,56,00,3d, 00,2d, \ 00,31,00,51,00,32,00,00,00,68,00,6a , 00,4f, 00,46,00,70,00,48,00,2d, 00,24,00, \ 4b, 00,34,00,69,00,4f, 00,68,00,33, 00,72,00,60,00,65,00,62,00,28,00,36,00,43, \ 00,6f, 00,64,00,65,00,5f, 00,41,00,6e, 00,61,00,6c, 00,79,00,73,00,69,00,73,00, \ 5f, 00,54,00,6f, 00,6f , 00,6c, 00,73,00,5f, 00,31,00,31,00,39,00,38,00,37,00,5f, \ 00,78,00,38,00,36, 00,5f, 00,65,00,6e, 00,75,00,3e, 00,39,00,42,00,21,00,4e, 00, \ 63,00,6a, 00,24,00 , 58,00,70,00,45,00,42,00,75,00,6a, 00,21,00,56,00,3d, 00,2d, \ 00,31,00,51,00, 32,00,00,00,00,00

  1. Desinstale el ensamblado de GAC

"C: \ Archivos de programa (x86) \ Microsoft SDKs \ Windows \ v10.0A \ bin \ NETFX 4.6 Tools \ x64 \ gacutil.exe" / u "Microsoft.VisualStudio.CodeAnalysis, Versión = 14.0.0.0, Cultura = neutral, PublicKeyToken = b03f5f7f11d50a3a, processorArchitecture = MSIL "/ f

También se recomienda mover la carpeta CodeAnalysis_disabled a otra ubicación, ya que no puedo decir cómo se implementa el cargador VS MEF y dónde buscará complementos.

también
fuente
Nota: Puede deshabilitarlo mediante: Menú-ReSharper-Opciones-Inspección de código- "Habilitar análisis de código".
Eric Ouellet
Ya probé su sugerencia en el pasado (antes de la Actualización 2) pero no evitó que Visual Studio se congelara. Parece suceder menos pero aún se congela. Lunes 18 de abril (hace 3 días) Acabo de desinstalar el paquete 20-30 Framework.net de "Programa y características" y reinstalé Visual Studio con la Actualización 2 por completo. Parece mejor, al menos sobre la congelación, porque no he recibido el mensaje de memoria durante más de una semana. Esperaré para estar seguro de la solución adecuada antes de aceptar una respuesta. Gracias.
Eric Ouellet
Realmente no me importa el análisis de código del propio ReSharper. De hecho, tiene sentido que VS aún se congele con grandes bases de código, ya que es una aplicación de 32 bits que aparentemente después del crecimiento continuo de funciones necesita un salto de 64 bits para hacer frente a las limitaciones de memoria. Trate mi respuesta como una pista que ayuda a deshabilitar una función de memoria y CPU por el momento. Consulte también la actualización.
también
Estoy probando tu solución. ¡Gracias! Hoy, nuevamente, se reinició mi actualización 2 de VS2015. Bastante agresivo como solución, pero si funciona :-) !!! Los mantendré informados del comportamiento en mi computadora ...
Eric Ouellet
Acabo de recibir el mismo mensaje: "Se detectó poca memoria ..." aunque seguí sus instrucciones. Creo que el Codeanálisis sigue ahí. Parece que es muy difícil desactivar CodeAnalysis. Me pregunto si no es fundamental para VS2015 que funcione correctamente (... parte de Roslyn).
Eric Ouellet
3

Una solución para este problema es deshabilitar el análisis de solución completo yendo a Herramientas -> Opciones -> Editor de texto -> C # (o Básico) -> Avanzado -> Desmarque "Habilitar análisis de solución completo".

Esto parece ser un error en el que el equipo de Rosyln está trabajando https://github.com/dotnet/roslyn/issues/10365

John Atwood
fuente
Gracias, acabo de deshabilitar VS Solution Analysis. Tu enlace tiene mucha información útil.
Eric Ouellet
Después de 2 horas ==> no hay mensaje de memoria, pero VS falla y se reinicia. Pero no reinicié después de deshabilitar el análisis completo de la solución. ¡Ahora está hecho :-)!
Eric Ouellet
1
No sé si soluciona el error del mensaje de memoria. Pero ciertamente no soluciona el problema de la memoria, la inevitable lentitud que se produce al cabo de un tiempo (como 4 horas en mi caso). Y finalmente se bloquea y muere. Todavía hay un error. No soluciona el problema. (2016-04-26, 6 horas después de probar la solución alternativa).
Eric Ouellet
1
¡Entendido! "Se detectó poca memoria. Análisis de solución completa deshabilitado para esta solución" aunque mi Análisis de solución completa ya estaba deshabilitado. Es tan lento que tengo que cerrar y reiniciar. ¡¡¡Muy productivo!!! Solo después de una hora.
Eric Ouellet
¿Alguien puede explicar qué hace realmente "Habilitar el análisis completo de la solución" ? Ya lo tengo desactivado, pero también recibo el mensaje "Se detectó poca memoria".
Craig W.
3

Leí algunos artículos que describen este problema como que excede el espacio de direcciones virtuales porque alguna estructura de memoria interna (tal vez la lista) excede los 2GB. 2GB es el espacio de direcciones virtuales predeterminado para procesos de 32 bits como VS 2015. Pero puede ajustarlo a un máximo de 3GB.

La solución que encontré es de aquí :

Start▸All Programs▸Accessories▸right-click on Command Prompt▸Run as administrator

Run the following command:

bcdedit /set IncreaseUserVa 3072

Restart the computer.

Esta no es una solución al 100% porque eventualmente puede quedarse sin espacio de direcciones virtuales incluso con 3GB de RAM para un proceso. Después de ajustar este interruptor, VS dejó de quejarse de la memoria.

Ognyan Dimitrov
fuente
Gracias Ognyan, potencialmente podría darte un poco más de tiempo, pero no conozco la desventaja. Si no hay ninguno, ¿por qué Microsoft no establecería esa configuración ellos mismos? Prefiero esperar una solución más sólida. Pero quizás a algunas personas les gustará y lo probarán. Como nota al margen, ¿parece ser solo para la edición de 32 bits de Windows (como está escrito en la primera oración)? Tengo Windows 7 de 64 bits
Eric Ouellet
1
Supongo que en un sistema de 32 bits con solo 4 GB de memoria direccionable no hay otra opción. Ahora tengo una máquina con 32G de RAM y no hay problema para darle un poco más al proceso: el sistema operativo tendrá más que suficiente para usar. Puede leer esto en el vínculo : "En las ediciones de 32 bits de Windows, las aplicaciones tienen 4 gigabytes (GB) de espacio de direcciones virtuales disponibles. El espacio de direcciones virtuales se divide para que 2 GB estén disponibles para la aplicación y los otros 2 GB sólo está disponible para el sistema ".
Ognyan Dimitrov
¡Esto suena interesante! Lo probaré si / cuando vs2015 vuelva a fallar. ¡Gracias!
Roman
1
@OgnyanDimitrov, Windows lanzó una nueva actualización que solucionó los bloqueos de VS2015. Como resultado, no probé esta solución.
Roman
@OgnyanDimitrov, fue una actualización general de Windows. Alrededor del 9 al 12 de mayo, lanzaron una gran cantidad de actualizaciones (alrededor de 30), y una de ellas (o varias) fue el reparador. Asegúrese de que todas las actualizaciones de Windows estén instaladas.
Romano
2

Mi respuesta es cerrar y abrir Visual Studio.

Tengo la opción "Habilitar análisis de solución completo" sin marcar y todavía recibo el mensaje de Visual Studio "Se detectó poca memoria. Análisis de solución completo desactivado para esta solución". La versión de Visual Studio 2015 es la 14 Actualización 2. Me parece que tengo que cerrar VS.

VS no puede abrir las tareas de TFS y no puedo registrar el código a menos que cierre y vuelva a abrir VS. Afortunadamente, tengo un nuevo disco duro de estado sólido, por lo que el cierre / apertura del VS no me hace esperar tanto como antes. Pero sigue siendo una molestia decepcionante.

Joe Kahl
fuente
2
Gracias, pero eso es lo que ya estoy haciendo. Estoy buscando una solución menos inquietante :-)!
Eric Ouellet
0

Había estado aguantando este problema durante un tiempo. Vería que el uso de la memoria aumenta constantemente cuando se trabaja con archivos TypeScript, lo que conduce a un eventual bloqueo. Si esta pudiera ser su situación, verifique si tiene rxjs en algún lugar de su proyecto. Si la versión es 5.0.0-beta.2, actualice a 5.0.0-beta.3 (o superior) para solucionarlo.

Más detalles: https://github.com/Microsoft/TypeScript/issues/7344#issuecomment-198392320

gxclarke
fuente
Solo trabajo con WPF, ¿hablas de una referencia? En caso afirmativo, nunca hice referencia a rxjs en ninguna parte de mis proyectos.
Eric Ouellet
0

Ojalá tuviera una bala mágica. Pero esto es lo que me ha ayudado, pero ahora siempre resuelve el problema. Actualización de VS2015 2. Resharper 2016.1.1. Todos los proyectos son vNEXT.

  1. En Resharper -> Opciones -> Inspección de código -> Configuración. Agregue tantos en la carpeta wwwroot. También agregué cada carpeta debajo de wwwroot ya que no parecía en cascada. En Máscaras de archivo, agregue cualquier marco * .js o * .css (es decir, * .min.js, * jquery.js, * angular.js, * .min.css). Este paso ayudó a reducir la "carga de archivos de origen" que hace el resharper cuando construyo js / css con Gulp, Grunt para publicar.

  2. Esto no es ideal, pero cuando estoy escribiendo código y no planeo probar, descargaré todos los proyectos que no estoy usando, generalmente en prueba. Esto parece reducir la 'Memoria administrada' que usa resharper / vs.

  3. Por último, y algo molesto es que NUNCA miro los archivos debajo de bower_components en el explorador de VS Solution. Encuentro que ir a la carpeta directamente y usar algo como VSCODE para ver JS / JSON me ahorra tiempo y frustración. Me lleva a creer que aunque node_modules y bower_components se 'ignoran', en realidad no se ignoran o tiene algo que ver con la gran cantidad de archivos en un directorio de proyecto.

Espero una solución que sea al 100%, pero espero que estos ayuden.

Rentering.com
fuente
Estoy actualizando mi experiencia. Deshabilité ReSharper Tools -> Opciones. CodeMaid instalado. Sigo recibiendo el error de memoria baja. Me tomó más tiempo obtener el error, pero no creo que este sea un problema de Resharper, pero creo que Resharper hace que suceda más rápidamente. No hay solución aquí todavía, pero estoy feliz de que no sea culpa de Resharper (per se).
Rentering.com