12 ms·
This is somewhat similar to something I published sometime ago, and even gives a very similar name to the process http://belliottsmith.com/injector/ http://bel
by _benedict 9y ago
This is somewhat similar to something I published sometime ago, and even gives a very similar name to the process
http://belliottsmith.com/injector/ http://belliottsmith.com/injector/
The main differences are the potential delay for adding threads, and the use of ML. The "injector" immediately adds threads if there are none spare (and there's permitted headroom), at the time of task submission. They are then _pruned_ as they are seen to be wasting cycles.
Admittedly this approach was designed to minimise the overheads of thread state management only, whereas in principle the CLR approach can respond to harmful competition for resources between tasks as well, assuming relatively consistent behaviour.
The downside of course is potentially very slow ramp-up time when the workload calls for a sudden increase in threads.
- matthewwarren 9y agoNice, thanks for the link, looks interesting In Java I assume that the executor and/or injection algorithm can be swapped out with your own implementation, is that right?
- _benedict 9y agoYes, that's correct