-
Notifications
You must be signed in to change notification settings - Fork 803
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
FSharp.Interactive.Session.bufferEvent causing UI delays that are 5 > x >= 2 seconds #6077
Comments
Does this happen when you type in FSI inside VS? Or is this called when typing in the main code window, inside some large project? |
This is inside VS only, and based on my understanding, when you interact with the FSI window there: |
Maybe a concurrentqueue would perform better here? |
I doubt a ConcurrentQueue would help. It runs this routine on the UI thread. |
What are the locks for? Just in case the Timer fires off the function at overlapping intervals? Could we make that impossible and not need locks? Alternatively could we use the C# Queue here instead of a linkedlist for better memory locality? |
I haven't reproduced this at all and my UI delays internally don't show this either. Will close this out since others haven't really noticed anything significant. |
From my UI delays:
This function is the source:
https://github.com/Microsoft/visualfsharp/blob/fead0aac540485683f694524eadad79983ec28d9/vsintegration/src/FSharp.VS.FSI/sessions.fs#L80-L124
I believe the whole thing runs on the UI thread which isn't inherently bad, but a >=2 second delay is a bit much.
The text was updated successfully, but these errors were encountered: