Daniil Ovchinnikov

Results 70 comments of Daniil Ovchinnikov

Since I've started to advertise `limitedParallelism` is IJ codebase, I see misunderstanding of `Dispatchers.IO` elasticity: it's not consistent with other dispatchers, and it raises questions, and I have to direct...

> Except that Dispatchers.IO size is 64. This. When I've asked why another `newFixedThreadPool` exists, it was because "`Dispatchers.IO` is bounded", and the author didn't want to exhaust `Dispatchers.IO`, so...

> Could you please provide a few examples where this behaviour is a problem or a gotcha that required a fix? Basically the problem is that `Dispatchers.IO.limitedParallelism` is left unused,...

Another thing related to the intent of code. Some client, which the platform does not control, may regularly exhaust `Dispatchers.Default`. In few cases we cannot afford starvation because of some...

> Introducing a whole new Dispatchers.Unbounded would add much confusion I'd expect that it would at least make the user think about why both `Dispatchers.IO` and `Dispatchers.Unbounded` exist, and then...

> So, if it's error-prone to take views of Dispatchers.IO and it's also error-prone to not take views of Dispatchers.Unbounded, why didn't the coroutines guys just make it so that...

> a ServiceLoader-based API for contributing to the default coroutine context I've just discovered #2932

https://github.com/JetBrains/intellij-deps-kotlinx.coroutines/commit/0103dd5694cb67f5790a41c0e02cdbc38829735b

> you can remove it from the context where you don't need it How? Override with an empty element with the same key? I'd like to have a proper way...