-
Notifications
You must be signed in to change notification settings - Fork 107
Rework ProcessScheduler #228
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
Conversation
…he scheduling thread would die (and potentially the entire process if the exception went unhandled)
Codecov Report
@@ Coverage Diff @@
## master #228 +/- ##
==========================================
+ Coverage 43.65% 43.69% +0.03%
==========================================
Files 360 361 +1
Lines 8045 8040 -5
Branches 992 985 -7
==========================================
+ Hits 3512 3513 +1
+ Misses 4237 4233 -4
+ Partials 296 294 -2
Continue to review full report at Codecov.
|
well, if I hold down arrow, and go through my list of completions, that's a lot of stuff that would be happening serially. In our case, it would be better parallel.. but you may want to ask @NTaylorMullen or others if that's ok. |
Does this only impact scenarios where you return isInComplete: true? |
@NTaylorMullen so whenever the editor highlights an completion item, resolve is called to get additional details. Partial lists are a different thing. |
Ah what would the potential drawbacks be of it being parallel? |
I think @david-driscoll's issue was that it has the ability to change state I think...:
This is found on |
I see. Ya I wouldn't think that making completion resolve parallel would cause any issues. That being said, in the middle of a completion session I wouldn't expect many other events to be going through the language server either though so i'm not sure it being parallel would buy a whole lot either |
This is to rework the scheduler to achieve a few things:
If you don't like observables cover your eyes.
If you like observables and know a slightly better way to fan-in fan-out let me know! 😄
@TylerLeonhardt what are your thoughts on making completion resolve handler parallel? Originally I had it serial because it can contain actions and edits but that would get invalidated by another document change anyway.