Visual Studio gỡ lỗi / tải rất chậm


505

Tôi đang ở cuối wits. Visual Studio thường rất chậm để gỡ lỗi hoặc chỉ tải đơn giản ("bắt đầu mà không gỡ lỗi") các trang web ASP.NET MVC của tôi. Không phải lúc nào: lúc đầu, các dự án sẽ tải tốt và nhanh, nhưng một khi chúng tải chậm, chúng sẽ luôn tải chậm sau đó. Tôi có thể đợi 1-2 phút trở lên.

Thiết lập của tôi:

Hiện tại tôi đang sử dụng Visual Studio 2012 Express , nhưng tôi cũng gặp vấn đề tương tự trong Visual Studio 2010 Express. Giải pháp của tôi được lưu trữ trên một ổ đĩa mạng; cụ thể, đó là Tài liệu của tôi được chuyển hướng đến ổ đĩa mạng, nếu có vấn đề. (Không nên. Đôi khi trang web của tôi tải rất nhanh theo thiết lập này.)

Tôi tải trong Internet Explorer 9 thường xuyên, nhưng vấn đề tương tự xảy ra trong Firefox.

Điều này có thể xảy ra trong bất kỳ dự án ASP.NET MVC nào mà tôi làm việc và dường như xoay quanh việc có DisplayTemsheet, điều mà tất cả các dự án ASP.NET MVC của tôi đều làm. Và đó là tất cả C # và Dao cạo, nếu điều đó quan trọng.

Triệu chứng:

Hệ thống sẽ tải các biểu tượng của tôi hàng trăm lần. Về cơ bản, sau đây, nhưng có ít nhất 300 hàng như vậy, mỗi hàng có các tệp DLL khác nhau đôi chút cho cùng một CSHTML:

'iisexpress.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\b63f8236\6775085d\App_Web_contact.cshtml.22013bb9.xighmhow.dll', Symbols loaded.
'iisexpress.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\b63f8236\6775085d\App_Web_contact.cshtml.22013bb9.cv5hktkf.dll', Symbols loaded.
'iisexpress.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\b63f8236\6775085d\App_Web_statuscode.cshtml.22013bb9.1o77hs8i.dll', Symbols loaded.
'iisexpress.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\b63f8236\6775085d\App_Web_statuscode.cshtml.22013bb9.jja-77mw.dll', Symbols loaded.
'iisexpress.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\b63f8236\6775085d\App_Web_location.cshtml.22013bb9.l_e9ev_s.dll', Symbols loaded.
'iisexpress.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\b63f8236\6775085d\App_Web_location.cshtml.22013bb9.b4n59gom.dll', Symbols loaded.

Trong phần trên, tôi đã có ba Bản mẫu: "Liên hệ", "Vị trí" và "Mã trạng thái". Dường như IIS đang tải các biểu tượng hai lần cho mỗi lần hiển thị bảng hiển thị được gọi. Do đó, nếu tôi đang hiển thị một bảng gồm 100 mục gọi cả ba mẫu hiển thị này, thì đó là 600 biểu tượng riêng biệt được tải.

Đây cũng không phải là một hoạt động nhanh chóng. Tìm kiếm trong các tệp nhật ký mà IIS tạo ra, phải mất khoảng 200 ms cho mỗi biểu tượng để tải. Như vậy, sự chậm trễ siêu dài.

Những gì tôi đã thử:

  • Phiên bản gỡ lỗi hoặc phát hành, nó không thành vấn đề.
  • Đưa dự án của tôi vào triển khai IIS đầy đủ trên máy chủ web sẽ chạy rất nhanh mà không gặp vấn đề gì.
  • Cassini, IIS Express 7.5 và IIS Express 8.0 đều có vấn đề.
  • Xóa tất cả các điểm dừng không làm gì.
  • Giải pháp sạch , hoặc xóa .suo cũng không làm gì cả.
  • Nếu tôi sửa IIS Express hoặc xóa My Docs\IISExpressthư mục hoặc sửa chữa / cài đặt lại Visual Studio → vấn đề có thể biến mất, nhưng chỉ trong một thời gian, trước khi nó quay lại ngay.

Bất kỳ lời khuyên nào đều được đánh giá cao.

Để trả lời nhiều câu hỏi hơn, vâng, máy của tôi chắc chắn có mã lực. Điều gây phẫn nộ là cùng một dự án, với việc KHÔNG thay đổi, đôi khi có thể tải rất nhanh, thường là sau khi tôi sửa IIS Express và xóa My Docs\IISExpressthư mục. Cuối cùng, "một cái gì đó" xảy ra và mất đến 2 phút để tải lại. Những gì tôi đang làm không phải là một dự án phức tạp. Không có thư viện bên ngoài hoặc phụ thuộc và VS.NET của tôi không có tiện ích bổ sung nào.

Đáng chú ý, chiếc máy này có Symantec Endpoint Protection, có lịch sử gây ra sự tàn phá. Nhưng việc vô hiệu hóa nó hoàn toàn (tốt là một quản trị viên) đã không khắc phục được vấn đề.

Tôi có một lý thuyết vào thời điểm này. Tôi nghĩ rằng đây là tất cả bởi vì tôi đang làm việc với một thư mục được chuyển hướng khỏi chia sẻ mạng. Trong khi trình gỡ lỗi đang trải qua hàng trăm dòng "biểu tượng được tải", tôi dừng lại để xem nó đang làm gì. Đó là trong mã của tôi, tải DisplayTemplate tôi có. Bước vào đầu ra mẫu này:

Step into: Stepping over non-user code 'System.Threading.WaitHandle.InternalWaitOne'
Step into: Stepping over non-user code 'System.Threading.WaitHandle.WaitOne'
Step into: Stepping over non-user code 'System.CodeDom.Compiler.Executor.ExecWaitWithCaptureUnimpersonated'
Step into: Stepping over non-user code 'System.CodeDom.Compiler.Executor.ExecWaitWithCapture'
Step into: Stepping over non-user code 'Microsoft.CSharp.CSharpCodeGenerator.FromFileBatch'
Step into: Stepping over non-user code 'Microsoft.CSharp.CSharpCodeGenerator.System.CodeDom.Compiler.ICodeCompiler.CompileAssemblyFromFileBatch'
Step into: Stepping over non-user code 'System.Web.Compilation.AssemblyBuilder.Compile'
'iisexpress.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\b63f8236\6775085d\App_Web_statuscode.cshtml.22013bb9.bciuyg14.dll', Symbols loaded.
Step into: Stepping over non-user code 'System.Web.Compilation.BuildManager.CompileWebFile'
Step into: Stepping over non-user code 'System.Web.Compilation.BuildManager.GetVPathBuildResultInternal'
Step into: Stepping over non-user code 'System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert'
Step into: Stepping over non-user code 'System.Web.Compilation.BuildManager.GetVirtualPathObjectFactory'
Step into: Stepping over non-user code 'System.Web.Mvc.BuildManagerWrapper.System.Web.Mvc.IBuildManager.FileExists'
Step into: Stepping over non-user code 'System.Web.Mvc.VirtualPathProviderViewEngine.GetPathFromGeneralName'
Step into: Stepping over non-user code 'System.Web.Mvc.VirtualPathProviderViewEngine.FindPartialView'
Step into: Stepping over non-user code 'System.Web.Mvc.ViewEngineCollection.Find'
Step into: Stepping over non-user code 'System.Web.Mvc.ViewEngineCollection.FindPartialView'
Step into: Stepping over non-user code 'System.Web.Mvc.Html.TemplateHelpers.ActionCacheViewItem.Execute'
'iisexpress.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\b63f8236\6775085d\App_Web_statuscode.cshtml.22013bb9.kwj3uqan.dll', Symbols loaded.
Step into: Stepping over non-user code 'System.RuntimeType.CreateInstanceSlow'
Step into: Stepping over non-user code 'System.Web.Mvc.DependencyResolver.DefaultDependencyResolver.GetService'
Step into: Stepping over non-user code 'System.Web.Mvc.BuildManagerViewEngine.DefaultViewPageActivator.Create'
Step into: Stepping over non-user code 'System.Web.Mvc.BuildManagerCompiledView.Render'

Có vẻ như Visual Studio đang biên dịch lại màn hình hiển thị của tôi mỗi lần nó được gọi, một lần nữa, hàng trăm lần. Lý thuyết của tôi là Visual Studio biên dịch tệp, lưu nó vào chia sẻ mạng, chia sẻ mạng sau đó bằng cách nào đó đóng dấu một thời gian mới trên đó và Visual Studio sau đó nghĩ rằng tệp đã thay đổi và do đó Visual Studio biên dịch lại một lần nữa. Chỉ có một lý thuyết mặc dù; Tôi thật sự không có manh mối nào.

Đối với một người, rõ ràng tôi có các tệp ngoại tuyến trên (đây là một máy tính để bàn trong văn phòng; tôi không thể quan tâm ít hơn). Tôi sẽ vô hiệu hóa, khởi động lại và thử lại vào ngày mai.

Thêm vào đó, chuyển dự án của tôi, như là, đến địa phương C: sửa nó. Nó tải rất nhanh. Nhưng điều này không lý tưởng trong môi trường làm việc. Tôi mất các Phiên bản trước, mã của tôi hoàn toàn không được sao lưu trừ khi tôi sao chép thủ công và nó không còn được chia sẻ với bất kỳ ai.

Tôi có thể thực hiện với việc sao chép nó qua lại từ C vào mạng chia sẻ, nếu nói đến nó. Thật khó chịu hơn nhiều khi phải chờ hai phút cho mỗi lần tải trang.


Tôi có rất nhiều câu hỏi: Còn máy bạn đang chạy thì sao? Liệu nó có đủ mã lực cho những gì bạn đang cố gắng làm? Bạn có bất kỳ plugin của bên thứ ba? Bạn có loại diệt virus nào?
Fickle Panther

1
Cập nhật câu hỏi của tôi với nhiều thông tin hơn.
Ber'Zophus

Loại bỏ các tập tin ngoại tuyến dường như chỉ là sửa chữa. Nó làm việc tuyệt vời trong một thời gian, sau đó vấn đề trở lại. Nhưng tôi có một câu trả lời khác có thể. Cập nhật giải pháp của tôi.
Ber'Zophus

Để giải quyết câu hỏi chống vi-rút, tôi gặp vấn đề lớn với việc chạy ThreatFire. Tạm thời tắt nó để tăng tốc trình gỡ lỗi cho tôi ít nhất gấp trăm lần. Tắt AV chính của tôi (Avast!) Chỉ giúp một chút.
Jon Coombs

@JohnSaunders Bạn có cố gắng chạy nó trong chế độ quản trị ?: stackoverflow.com/questions/36322440/...
Robert Oschler

Câu trả lời:


650

Đây là cách tôi giải quyết vấn đề "tải biểu tượng chậm" trong Visual Studio 2012:

  • Chuyển đến Công cụ -> Tùy chọn -> Gỡ lỗi -> Chung

  • KIỂM TRA dấu kiểm bên cạnh "Kích hoạt chỉ mã của tôi".

  • Chuyển đến Công cụ -> Tùy chọn -> Gỡ lỗi -> Biểu tượng

  • Nhấp vào nút "..." và tạo / chọn thư mục mới ở đâu đó trên máy tính cục bộ của bạn để lưu trữ các biểu tượng được lưu trong bộ nhớ cache. Tôi đặt tên cho mình là "Bộ nhớ đệm biểu tượng" và đặt nó vào Tài liệu -> Visual Studio 2012.

  • Nhấp vào "Tải tất cả các biểu tượng" và đợi các biểu tượng được tải xuống từ máy chủ của Microsoft, việc này có thể mất một lúc. Lưu ý rằng nút Tải tất cả các biểu tượng chỉ khả dụng trong khi gỡ lỗi.

  • UNCHECK dấu kiểm bên cạnh "Máy chủ biểu tượng Microsoft" để ngăn Visual Studio truy vấn từ xa các máy chủ của Microsoft.

  • Nhấp vào "OK".

Từ bây giờ, tải biểu tượng sẽ nhanh hơn nhiều.

Lưu ý rằng nếu bạn thực hiện bất kỳ thay đổi / tải xuống nào cho các hội đồng của Microsoft, bạn có thể cần quay lại hộp thoại Biểu tượng và "Tải lại tất cả các biểu tượng".


31
Không có sửa chữa cho tôi, tôi sợ. Đây sẽ là một giải pháp tốt cho những người xoay quanh các vấn đề với các biểu tượng của Microsoft. Thật không may cho tôi, vấn đề của tôi dường như xoay quanh các biểu tượng của riêng tôi. Những biểu tượng đó đã lưu trữ cục bộ và vì một số lý do, đã biên dịch hàng trăm ô chỉ trong một lần tải trang.
Ber'Zophus

8
cảm ơn vì mẹo này một vấn đề tôi đang gặp phải ở đây là nút tải tất cả các biểu tượng bị vô hiệu hóa cho tôi ý tưởng nào?
Chris McGrath

14
@ChrisMcGrath hãy thử liên kết này social.msdn.microsoft.com/Forums/en-US/vsdebug/thread/ cảm . Btw cảm ơn vì câu trả lời tuyệt vời
Bobby Bàn

16
ngay cả sau khi làm theo các bước của bạn, nút "Tải tất cả các biểu tượng" bị ẩn và tôi không thể nhấp vào đó. Tôi nên làm gì bây giờ? Tôi đang sử dụng VS Express 2012.
Himanshu Aggarwal

86
Đây là giải pháp cho những người có nút Tải tất cả các biểu tượng bị vô hiệu hóa: Nút chỉ khả dụng trong khi gỡ lỗi.
Gwynnbleid1

114

Tắt intelliTrace đã sửa lỗi này cho tôi.

Trong Visual Studio, Công cụ -> Tùy chọn -> IntelliTrace

Sau đó, bỏ chọn hộp kiểm cho "Bật IntelliTrace".

Vô hiệu hóa IntelliTrace trong Visual Studio 2012


2
Tôi đã có vấn đề này khi bước qua một trong những bài kiểm tra đơn vị của tôi. Mất khoảng 300 giây khi bật intellitrace và khoảng 14 giây khi nó được tắt. Sửa chữa này thực sự làm việc cho tôi.
Paul Bullivant

2
Cải thiện khả năng khởi động của tôi từ 25 giây lên 6. Tôi nghĩ rằng nó đã giúp ích rất nhiều vì tôi đã chạy rất nhiều mã của riêng mình khi bắt đầu ứng dụng
James Ellis-Jones

2
Chết tiệt ... Từ 1 phút đến 10 giây. Nó được chọn theo mặc định trong VS2012 Ultimate. Coi chừng mọi người
Kevin Cloet

7
Không thể tìm thấy Intellitrace trong Công cụ => Tùy chọn. .. tôi có vsComunity 2015
shireef khatab 8/8/2016

8
Trong Visual Studio 2015, Intellitrace chỉ tồn tại trong VS 2015 Enterprise Edition.
HK1

78

Không ai trong số này làm việc cho tôi nhưng tôi đã tìm thấy một Điểm dừng trên một biểu tượng đã bị xóa. Có vẻ như năm 2010 đã được treo trên đó. Để xem đây có phải là vấn đề của bạn không, hãy gỡ lỗi-> windows-> breakpoint Nếu có trong đó chỉ cần xóa chúng.

Saunders, đã đề cập ông đã kiểm tra điều đó nhưng nó không được đề cập trong các giải pháp cho vấn đề này. Có thể kiến ​​thức phổ biến cho một số, nhưng không phải tất cả chúng ta.


5
Tôi bắt đầu gặp vấn đề này trong VS2010 một cách đột ngột, và thực sự, đó là một trong những điểm dừng của tôi đã gây ra nó. Ngay khi tôi xóa điểm dừng của mình, nó lại trở nên nhanh chóng.
David Airapetyan

3
Wow..VS2012 đã bò, 5 phút chỉ để xây dựng một dự án đơn giản. Xóa tất cả các điểm dừng và nó lại sáng trở lại, cảm ơn !!
QFDev

1
Sau khi đọc nó và làm theo những gì bạn nói, tôi đã tìm thấy một điểm dừng bằng cách nào đó được đặt trong mã XML của một trong các tệp thực thể edmx của tôi. Bạn da nam / nữ.
JB06

Cảm ơn rất nhiều. Điều này đã giải quyết vấn đề của tôi với hiệu năng rất chậm của VS2010.
Vaibhav Patle

2
Điều này cũng hoạt động cho một vấn đề gỡ lỗi chậm mà tôi gặp phải trong Visual Studio 2015.
purplecat

41

Tôi đã xóa thư mục "Tệp ASP.NET tạm thời" và tải trang localhost của tôi được cải thiện đáng kể. Đây là đường dẫn ...% temp% \ Tệp ASP.NET tạm thời \


9
C: \ Users \ {USER_NAME} \ AppData \ Local \ Temp là đường dẫn và thư mục "AppData" là một thư mục ẩn
Shiva Naru

2
Tôi tìm thấy 1GB crap cũ ở đây .... xóa tất cả và VS chạy tốt hơn một chút. :)
RitchieD

29

Bạn đã kích hoạt FusionLog chưa?

VisualStudio của tôi khởi động rất chậm, mở giải pháp và tải biểu tượng khi bắt đầu gỡ lỗi. Nó chỉ chậm trên máy của tôi chứ không phải trên các máy khác.

FusionLog ghi hàng tấn công cụ đăng nhập vào đĩa. Chỉ cần vô hiệu hóa nó trên RegEdit đã giải quyết mọi thứ, trong trường hợp của tôi.

Đây là khóa FusionLog trên sổ đăng ký:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Fusion

Kiểm tra giá trị ForceLog (bật 1, 0 bị tắt).


1
Uhmmm ... câu trả lời rất hay. Tôi đã ở trên cùng một chiếc thuyền. Tôi cũng đã kích hoạt FusionLogtừ lâu và quên vô hiệu hóa nó. Bây giờ gỡ lỗi ASP.NET MVCứng dụng nhanh hơn rất nhiều. Cảm ơn Chúa và @rkawano. :)
Leniel Maccaferri

29

Tôi đã trải qua vấn đề tương tự và đã thử hầu hết các nghị quyết ở trên. Đơn giản chỉ cần xóa các tập tin bộ nhớ cache và tạm thời cuối cùng làm việc cho tôi.

Hãy thử xóa nội dung của hai thư mục này:

C:\Users\\{UserName}\AppData\Local\Microsoft\WebsiteCache

C:\Users\\{UserName}\AppData\Local\Temp (đặc biệt là các thư mục tập tin iothypress và tạm thời ASP.NET).

Điều này có thể được thiết lập để xảy ra tự động khi đăng nhập vào Windows bằng cách thêm tệp cmd vào C:\Users\\{username}\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startupthư mục có nội dung sau:

rmdir C:\Users\\{username}\AppData\Local\Microsoft\WebsiteCache /s /q

rmdir C:\Users\\{username}\AppData\Local\Temp /s /q

Điều này đã làm việc. Thư mục "AppData" là một thư mục ẩn, chỉ trong trường hợp, ai đó không thể tìm thấy nó.
Shiva Naru

3
Đây là một trong những! Nó hoạt động tốt đến mức bây giờ tôi tự động thực hiện khi tôi đăng nhập vào Windows: Tôi đã thêm một tệp có tên là DeleteVisualStudioCache.cmd vào C: \ Users \ {username} \ AppData \ Roaming \ Microsoft \ Windows \ Start Menu \ Programs \ Khởi động với các lệnh sau: rmdir C: \ Users \ {username} \ AppData \ Local \ Microsoft \ WebsiteCache / s / q rmdir C: \ Users \ {username} \ AppData \ Local \ Temp / s / q tạm dừng
Graham Laight

25

Tôi nghĩ rằng cuối cùng tôi có thể ít nhất biết nguyên nhân, mặc dù không phải là lý do tại sao. Khi sự cố bắt đầu xảy ra lần nữa, tôi nhận thấy rất nhiều quá trình "conhost.exe" mồ côi. Tôi sẽ đóng Visual Studio và họ sẽ vẫn mở. Kết thúc nhiệm vụ trên mỗi người trong số họ cuối cùng đã giải quyết vấn đề một cách đáng tin cậy. [hy vọng]

(Xin lưu ý, conhost.exe không phải là một quy trình Visual Studio mặc dù Visual Studio sử dụng nó. Vì vậy, những người dùng khác ngoài đó có thể có các ứng dụng khác chạy conhost.exe. kết thúc một cách an toàn tất cả chúng trừ YMMV.)

Tại sao điều này xảy ra? Nó dường như xảy ra khi tôi mở nhiều dự án cùng một lúc, điều mà tôi có xu hướng thường làm, mặc dù tôi chỉ xây dựng và gỡ lỗi một trong số chúng bất cứ lúc nào.


Chỉnh sửa # 1 - Thật không may, đây là "viên đạn bạc". Nó không luôn luôn làm việc cho tôi. Thông thường, khi mọi thứ trở nên chậm chạp, tôi chỉ cần đóng tất cả các phiên Visual Studio của mình, sau đó đi vào trình quản lý tác vụ và kết thúc mọi phiên bản của nó, conhost.exe, iothypress.exe Microsoft.VisualStudio.Web.Host.exe và MSBuild.exe Tôi có thể tìm thấy.

Thông thường, sau đó, khi tôi khởi động lại dự án của mình, nó sẽ tải nhanh. Nhưng không phải lúc nào cũng vậy.

Thực sự tôi nghĩ rằng cách hành động tốt nhất có lẽ là không xây dựng & gỡ lỗi mã khỏi một thư mục / mạng chia sẻ được chuyển hướng.


Chỉnh sửa # 2 - Hai năm sau, và đây vẫn là một vấn đề đối với tôi trong Visual Studio Community 2013, nhưng dường như tôi đã ít nhất tìm thấy nhiệm vụ thủ phạm: Explorer.exe . Vâng, ai biết được. Khoảnh khắc tôi kết thúc nhiệm vụ đó, bam, tải trang trong một giây.

Nếu tôi có trình duyệt tệp Windows Explorer mở cho ổ đĩa mạng được chuyển hướng của mình (thường là do mã của tôi), vấn đề này dường như xảy ra. Đóng cửa sổ là không đủ, tôi phải hủy toàn bộ tác vụ Explorer.exe. Tôi chỉ có thể đoán những gì nó đang làm ... đi các hạt với xử lý tập tin?

Tôi thường có thể sử dụng trình quản lý tác vụ để khởi động một tác vụ explorer.exe mới (tôi chỉ có thể thực hiện quá nhiều thao tác thay thế) và Visual Studio sẽ tiếp tục tải tốt và nhanh chóng. Nhưng nếu tôi mở Windows Explorer một lần nữa, nó hầu như luôn quay trở lại siêu chậm.

Vì vậy, nếu bạn đã chia sẻ mạng được chuyển hướng, hãy thử. Nó chắc chắn nhịp đập làm việc tại địa phương.


Tôi biết đây là một tin cũ, nhưng tôi đã có vấn đề tương tự. Nhóm của tôi đề nghị tôi sử dụng một tập lệnh xây dựng sao chép các tệp từ nguồn cục bộ của tôi vào nơi các tệp đang được chạy và mỗi khi tôi chạy chương trình con đó, nó sẽ tạo ra một conhost.exe và không đóng nó. Khi tôi kết thúc tất cả các bản sao bổ sung, nó lại chạy rất nhanh.
Ai đóRandom

22

Trên đây là tất cả các giải pháp tốt và tôi đã thử tất cả chúng, nhưng đã có giải pháp ở đây , đó là

Debug -> Delete All Breakpoints

19

Đối với tôi đó là IE 9.08.8112.16241. Ngay khi tôi sử dụng Firefox hoặc Chrome, không có gỡ lỗi chậm chạp với F10 hoặc F11. Tôi không biết vấn đề với IE là gì nhưng tôi chính thức coi thường việc sử dụng nó để thử nghiệm ngay bây giờ.

Cập nhật: Tôi đã tắt tất cả các tiện ích bổ sung của chương trình IE và nó trở lại tốc độ tối đa. Bật chúng lên từng cái một cho thấy LastPass (trong trường hợp của tôi) là thủ phạm. Tôi đoán rằng tôi không thể đổ lỗi cho MS sau tất cả.


2
Điều này đã khắc phục vấn đề của tôi là tốt. Tôi đã nhận được khóa hệ thống hoàn chỉnh khi cố gắng gỡ lỗi, đặc biệt là khi sử dụng cửa sổ QuickWatch. Thanh công cụ LastPass cần được tắt. (IE 10.0.9200.16635)
mpeterson

1
Và đây là lý do tại sao tôi yêu StackOverflow. Nhưng LastPass nên khắc phục điều này - Tôi đang gửi email cho họ ngay bây giờ để cho họ biết. Đây rõ ràng vẫn là một vấn đề với VS2013 và IE 11. Đã tắt LastPass và trở lại bình thường. Cảm ơn UserBlueOne về thông tin - có thể bắt đầu lại với công việc.
Sean

1
FREAKEN CUỐI CÙNG! Bàn phím của tôi đã bị nhồi hoàn toàn khi gỡ lỗi trong VS 2012 với ứng dụng MVC của tôi. Vô hiệu hóa LastPass và mọi thứ lại bay. CẢM ƠN! Nâng cao.
Tony

Trong Win8.x với IE nếu bạn sử dụng tài khoản MS để đăng nhập, bạn có thể đồng bộ hóa thông tin đăng nhập của mình để không cần sử dụng LastPass nhưng vẫn có (một phần) lợi ích, :)
Peter

Điều này làm việc cho tôi. Xin lưu ý rằng bây giờ là 2019 --- sáu năm sau --- và tôi đang sử dụng plugin LastPass với Microsoft Edge.
Luke Maurer

15

Đối với tôi, tôi đã triển khai mẹo này về cơ bản cải thiện đáng kể hiệu năng bằng cách thêm hai thuộc tính sau vào thẻ biên dịch trong web.config

<compilation ... batch="false" optimizeCompilations="true"> ... </compilation>

Lô = "sai" làm gì?

Nó làm cho việc biên dịch trước trở nên chọn lọc hơn bằng cách biên dịch chỉ các trang đã thay đổi và yêu cầu biên dịch lại

Chính xác thì tối ưu hóa đang làm gì? Nguồn

ASP.NET sử dụng mã băm cho mỗi ứng dụng bao gồm trạng thái của một số thứ, bao gồm thư mục bin và App_Code và global.asax. Bất cứ khi nào một miền ứng dụng ASP.NET khởi động, nó sẽ kiểm tra xem mã băm này có thay đổi so với trước đó không. Nếu có, toàn bộ thư mục codegen (nơi tập hợp các bản sao được biên dịch và sao chép trực tiếp) sẽ bị xóa sạch.

Khi tối ưu hóa này được bật (thông qua tối ưu hóa = "đúng"), hàm băm không còn đưa vào tài khoản bin, App_Code và global.asax. Kết quả là, nếu những thay đổi đó chúng ta không xóa sạch thư mục codegen.

Tham khảo: Phần tử biên dịch trên msd


2
Cảm ơn đã đăng bài viết. Điều này thực sự đã làm nhiều hơn để cải thiện hiệu suất của tôi hơn câu trả lời được chấp nhận.
Kanomon

@ Ber'Zophus bạn có thể thử cái này và chia sẻ với chúng tôi kết quả của bạn không?
Korayem

biên dịch đi vào bên trong system.web
The One

1
Xác nhận để làm việc cho giải pháp lớn và ứng dụng web (MVC) trong.
hQuse

12

Tôi đã thực hiện các rắc rối về sự cố với việc gỡ lỗi và tôi đã thử rất nhiều tùy chọn của trình gỡ lỗi. Trong trường hợp của tôi, hiệu suất lớn đạt được khi tôi thay đổi tùy chọn này:

Công cụ - Tùy chọn - Gỡ lỗi - Cửa sổ đầu ra - (Cài đặt đầu ra chung - Tất cả đầu ra gỡ lỗi) - TẮT


12

Trong trường hợp của tôi, đó là .NET Reflector Visual Studio Extension (phiên bản 8.3.0.93) với VS 2012. Việc gỡ lỗi mất 10 giây cho mỗi Bước qua (F10).

Trong Visual Studio, đi đến Công cụ / Tiện ích mở rộng và Cập nhật ... và vô hiệu hóa Phần mở rộng Visual Studio của .NET Reflector . Đừng quên khởi động lại Visual Studio.


Tôi phát hiện ra một cách khó khăn rằng điều này cũng gây ra vấn đề của tôi. Chỉ sau khi vô hiệu hóa tiện ích mở rộng, tôi mới tìm xem có ai khác nhận thấy nó không.
awj 19/12/13

11

Tôi gặp vấn đề với việc gỡ lỗi Visual Studio chậm khi trình gỡ lỗi "Mã nguyên gốc" được bật. Hãy thử vô hiệu hóa nó.

Trên "Visual Studio 2012", truy cập:

  1. Thuộc tính dự án ->
  2. Web ->
  3. Trình gỡ lỗi (dưới cùng của trang). ->
  4. Vô hiệu hóa tất cả ngoại trừ ASP.NET

Hy vọng nó giúp.

Câu hỏi tương tự: 1 , 2


Thật không may, tôi đã thiết lập điều đó thật đáng tiếc, vì vậy tôi không thể sửa chữa. Nhưng có thể là lời khuyên tốt cho những người khác để thử.
Ber'Zophus

Điều đó đã sửa nó cho tôi!
Harvey

11

Trong trường hợp của tôi, nó là

Tools/Options/Debugging/General/Enable JavaScript debugging for ASP.NET (Chrome and IE)

Khi tôi bỏ chọn điều này, quá trình gỡ lỗi của tôi bắt đầu từ 45-60 giây xuống còn 0-5 giây.


Đây là cái nhanh nhất
Frank Myat Thu

10

Một lần, sau khi mất điện, tôi phải đối mặt với cùng một vấn đề chậm chạp mỗi khi một điểm dừng bị bắn hoặc Ngoại lệ bị ném.

Tôi mơ hồ nhớ rằng tệp "suo" (trong cùng thư mục với tệp giải pháp "sln") có thể bị hỏng và khiến mọi thứ chậm lại.

nhập mô tả hình ảnh ở đây

Tôi đã xóa các tập tin "suo" của mình và mọi thứ đều ổn. Việc xóa các tập tin .suo là vô hại và chỉ ngụ ý để tạo lại bố cục cửa sổ của tôi cộng với dự án bắt đầu và một vài tùy chỉnh không quan trọng khác.


Tôi chỉ nhận ra rằng tôi cũng bị chậm sau khi mất điện, cảm ơn rất nhiều vì câu trả lời này.
Nic

tìm kiếm một .vsthư mục trong các phiên bản sau của Visual Studio. Xóa cái đó đi.
CAD bloke

10

Tôi cũng đã phải đối mặt với vấn đề này, dưới đây là các bước tôi thực hiện và nó luôn hoạt động với tôi:

  • Xóa tập tin .suo của giải pháp.
  • Xóa các tệp ASP.NET tạm thời (Bạn có thể tìm thấy nó tại tìm thấy nó tại % WINDOW% \ Microsoft.NET \ Framework \\ Tệp ASP.NET tạm thời )
  • Xóa tất cả các điểm dừng trong ứng dụng.

Việc khởi động lại khiến nó mất nhiều thời gian hơn 5 lần so với bình thường thay vì dài hơn 10 lần so với bình thường. Xóa tệp .suo làm cho nó gần như khởi động ngay lập tức. Cảm ơn!
Shelby115

Có vẻ như xóa tập tin .suo làm việc. Bất kỳ lý do xóa các tập tin này giúp tăng hiệu suất.?
SharpCoder

@SharpCoder .suo chứa nhiều thông tin như tập tin nào đang mở trong IDE, thông tin trình gỡ lỗi, cài đặt cục bộ, v.v. Và khi tệp này sẽ bị hỏng, hãy bắt đầu sử dụng nhiều CPU hơn dẫn đến VS chậm và thậm chí bị treo một số trường hợp
Ninja Geeky

9

Tôi không biết liệu bạn có còn gặp phải sự cố này không, nhưng tôi gỡ lỗi các trang web trong Visual Studio bằng cách đính kèm trình gỡ lỗi vào chính quy trình thay vì để VS làm điều đó cho tôi và tôi đã tìm thấy nó để cải thiện rất nhiều lần. Tôi sử dụng một phần mở rộng cho VS có tên là Đính kèm và tôi có một bài viết nhỏ về cách tôi sử dụng nó ở đây .

Tôi hi vọng cái này giúp được.


7

Sự cố VS chậm của tôi đã được giải quyết bằng cách vô hiệu hóa Liên kết trình duyệt

nhập mô tả hình ảnh ở đây


Tôi biết ý kiến ​​"Cảm ơn" có một chút cau mày ở đây, nhưng nghiêm túc, CẢM ƠN BẠN RẤT NHIỀU. Sự thay đổi này đã đưa chương trình tôi đang thử nghiệm từ chậm đến mức không thể sử dụng thành phản ứng tức thời. Có lẽ bạn đã mua cho tôi khoảng một hoặc hai giờ mỗi ngày năng suất chỉ vì không phải chờ đợi mọi thứ để tải
thnkwthprtls

@thnkwthprtls bạn được chào đón - một trong những cài đặt mặc định của MS mà bạn cần để ý :)
Mặn

Không cần thiết phải vô hiệu hóa nó, hãy xem câu trả lời của tôi => stackoverflow.com/a/34979659/2736742
A. Morel

6

Nếu ai đó nhận thấy hành vi này xuất phát từ trường bên trái, hãy kiểm tra để đảm bảo bạn không có bất kỳ điểm dừng nào được đặt trong web.config. Tôi phải đặt một cái với một lần nhấp chuột đi lạc và nó thực sự làm chậm tất cả các hoạt động gỡ lỗi.


Chỉ cần có chính xác điều này bản thân mình. Gần như làm tôi phát điên. Tại sao trên thế giới một điểm dừng không hoạt động trong tệp web.config hoàn toàn phá vỡ gỡ lỗi?
pleunv

6

Sau khi dành cả ngày để chờ các biểu tượng tải chậm như tốc độ rùa, trộn và chuyển đổi giữa tất cả các kết hợp có thể có: Just My Code, bộ nhớ đệm , Intellitrace , Just-In-Time, quy trình tiêu diệt , v.v.

Giải pháp của tôi thực sự là vô hiệu hóa phần mềm chống vi-rút . Vâng, Windows Defender đã làm chậm quá trình khởi động dự án của tôi! Nó sẽ kiểm tra tất cả các dll khi Visual Studio yêu cầu chúng và làm chậm toàn bộ quá trình tải biểu tượng.

Tôi phải nói rằng máy móc của chúng tôi có thông số kỹ thuật tuyệt vời để biên dịch giải pháp thực sự nhanh chóng, vì vậy đó không bao giờ là vấn đề. Chúng tôi mã trong VS 2013 Ultimate.


1
Yeah, tắt windows defender hoạt động như một bùa mê! Để tắt vĩnh viễn trình bảo vệ cửa sổ trong Windows 10, hãy đặt Start = "4" (4 dành cho người khuyết tật) trong đường dẫn RegEdit HKLM \ System \ CurrentContolSet \ Services \ WinDefend
hal

Có vấn đề với phần mềm diệt virus AVG. Có ai đã làm việc nếu một thư mục cụ thể có thể được loại trừ khỏi phần mềm chống vi-rút để giải quyết vấn đề, xin vui lòng? Tôi đã lưu các ký hiệu được lưu vào bộ nhớ cache và đã loại trừ thư mục bộ đệm của biểu tượng - nhưng điều này không tạo ra sự khác biệt.
Graham Laight

1
bạn có thể giữ AV và loại trừ khỏi phân tích đường dẫn và mục tiêu nhất định (VS và các dự án của bạn)
Soleil - Mathieu Prévot

5

Làm trống bộ đệm biểu tượng làm việc cho tôi.

Xem: thanh menu / Công cụ / Tùy chọn / Gỡ lỗi / Biểu tượng / Bộ nhớ cache biểu tượng trống


3

Vấn đề tương tự lãng phí tốt hơn một nửa ngày của tôi!

Vì giải pháp cho vấn đề của tôi khác với những gì được nói ở đây, tôi sẽ đăng nó để nó có thể giúp đỡ người khác.

Của tôi là một điểm dừng. Tôi đã có một "Nghỉ tại chức năng" điểm dừng (nghĩa là thay vì nhấn F9 trên một dòng mã, chúng tôi tạo chúng bằng cửa sổ breakpoint) được cho là dừng trong một chức năng thư viện bên ngoài dự án của tôi.

Và tôi đã "Sử dụng Intellisense để xác minh tên hàm " KIỂM TRA. (Thông tin ở đây .)

Điều này chậm lại so với như địa ngục (khởi động dự án từ 2 giây đến 5 phút).

Loại bỏ các điểm phá vỡ giải quyết nó cho tốt.


3

Một điều làm việc cho tôi sau khi làm tất cả những điều trên là:
Trong cửa sổ Chủ đề (Gỡ lỗi-> Windows-> Chủ đề), đặt Nhóm theo Không. Điều này chỉ có thể được thực hiện trong khi gỡ lỗi.

Điều này đã có tác động ngay cả sau khi đóng cửa sổ đó.


3

Trong Visual Studio:

Công cụ -> Tùy chọn -> Gỡ lỗi -> Biểu tượng

Chọn "Chỉ các mô-đun được chỉ định". Nhấp vào liên kết "chỉ định mô-đun" và thêm mô-đun trống (nhấp vào nút tài liệu mới và nhấn OK).


3

Mở thư mục giải pháp trong windows explorer, đóng studio trực quan, xóa tệp .suo khỏi windows explorer.

Bây giờ hãy mở dự án trong studio trực quan, hy vọng trình gỡ lỗi sẽ được đính kèm / tách ra nhanh chóng.


3

Đối với tôi đó là điểm dừng có điều kiện. Những điều đó dường như thực sự làm chậm lại.


1
Quả thực họ làm. Nhưng chỉ khi các dòng chứa chúng thực sự được thực thi.
Peter Mortensen

3

Chuyển đến các biến môi trường của bạn và tìm khóa _NT_SYMBOL_PATH.

Xóa đi.

Voila, làm việc như một lá bùa.


value == symsrv*symsrv.dll*C:\WINDOWS\Symbols*http://msdl.microsoft.com/download/symbolsvẫn không có xúc xắc!
SliverNinja - MSFT

3

Vấn đề đối với tôi là tính năng "Liên kết trình duyệt" rất nặng khi bạn mở một số tab cho cùng một dự án!

Bởi vì mỗi khi chúng tôi khởi động dự án, nó sẽ mở ra một tab mới với các liên kết liên kết trình duyệt.

Chỉ cần đóng tất cả các tab liên quan đến dự án và chỉ mở một!

Studio trực quan miễn phí này ngay lập tức! Thật kỳ diệu! ;-)

Liên kết trình duyệt là một tính năng kể từ Visual Studio 2013 tạo ra một kênh giao tiếp giữa môi trường phát triển và một hoặc nhiều trình duyệt web. Bạn có thể sử dụng Liên kết trình duyệt để làm mới ứng dụng web của mình trong một số trình duyệt cùng một lúc, điều này rất hữu ích cho việc kiểm tra trình duyệt chéo.


3

Một giải pháp nhanh chóng và dễ dàng cho những người không có nhiều sai lệch so với cài đặt VS mặc định.

Công cụ -> Nhập và xuất cài đặt -> Có, lưu cài đặt hiện tại của tôi -> Visual C #

Tôi chắc chắn giải pháp trên cũng sẽ hoạt động với các cài đặt mặc định khác. Trong trường hợp của tôi, có gì đó không ổn với cài đặt tải biểu tượng của tôi nhưng tôi không thể sửa nó mặc dù tôi đã thử khá nhiều giải pháp được đề xuất.


3

Vui lòng đảm bảo rằng bạn chưa mở Visual Studio ở chế độ quản trị viên

Tôi gặp vấn đề này và phải chạy ở chế độ bình thường.


6
Thật không may khi chạy với tư cách quản trị viên là bắt buộc nếu bạn có các dự án của mình được thiết lập để chạy trong IIS.
Nelson Rothermel

@NelsonRothermel Phiên bản nào? Không còn nữa (VS2017).
Soleil - Mathieu Prévot

@Soleil: Trong VS2017 vẫn cần. IIS chạy dưới dạng dịch vụ Windows (hoặc bộ dịch vụ) chứ không phải trong không gian người dùng. Bạn có thể đề cập đến IIS Express không yêu cầu quyền quản trị viên. Nói chung, tôi khuyên bạn nên sử dụng cái sau, đặc biệt là trong một tổ chức khóa máy, nhưng nó có một vài nhược điểm.
Nelson Rothermel
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.