Bug 6115 - Source Analysis feature interrupts main thread too much
Summary: Source Analysis feature interrupts main thread too much
Alias: None
Product: Xamarin Studio
Classification: Desktop
Component: C# Binding ()
Version: 3.0.x
Hardware: Macintosh Mac OS
: Normal enhancement
Target Milestone: ---
Assignee: Mike Krüger
Depends on:
Reported: 2012-07-13 14:01 UTC by Stuart Carnie
Modified: 2013-08-19 05:50 UTC (History)
1 user (show)

Is this bug a regression?: ---
Last known good build:

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.

Please create a new report on Developer Community or GitHub with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:

Description Stuart Carnie 2012-07-13 14:01:23 UTC
There are a lot of UI interruptions (pauses / hiccups) in the C# source file editor when the Source Analysis feature is active.  This typically occurs immediately after editing, and attempting to cursor away from the current line or display intellisense; the cursor or scrolling lags / pauses.
Comment 1 Mike Krüger 2012-07-13 14:36:46 UTC
It's not really an official feature yet.

Works on linux/windows, but not on os x atm
Comment 2 Mikayla Hutchinson [MSFT] 2012-07-13 15:02:07 UTC
A lot of the perf issues with source analysis are because the analysis threads do a lot of allocations, and so in some cases all the threads can spend a lot of time contending for the Boehm GC's global allocation lock.

The sgen GC doesn't have this issue - try  running with sgen:

mono --gc=sgen MonoDevelop.app/Contents/MacOS/lib/monodevelop/bin/MonoDevelop.exe --no-redirect

This may crash occasionally on startup or when running nunit tests, but source analysis perf is much better.
Comment 3 Stuart Carnie 2012-07-13 15:52:30 UTC
Should that work with mono 2.11.2?
Comment 4 Stuart Carnie 2012-07-13 16:20:12 UTC
Figured out by using your mono launch script, @Michael :)
Comment 5 Stuart Carnie 2012-07-13 16:41:22 UTC
Thanks for your help, @Michael.  

Tried it on version 2.11.2 alpha of the mono runtime, but the pauses with intellisense are still there.  If I disable source analysis, no pauses.

I love the feature, but I'll disable it this round and happy to give it another try in future MD updates.


Comment 6 Mike Krüger 2012-07-16 01:55:57 UTC
No, maybe 2.12 :(
Comment 7 Mike Krüger 2013-08-19 05:50:18 UTC
Should be much better in the 4.x line.