> In the case of OrderedExecutor, it needs a BlockingQueue and the current
> default is to use JDK LinkedBlockingQueue which relies on CAS for
> enqueue/dequeue. Additional room for improvement here is to use a more
> specialized MP-SC queue with different wait strategies.
+1 to this, though
The reason for the performance difference between the OrderedExecutor and
the OrderedScheduler is
the underlying queue that is used to pass tasks to the executor thread.
In the case of OrderedExecutor, it needs a BlockingQueue and the current
default is to use JDK LinkedBlockingQueue which relies
> I don't think it is accidently. OrderedExecutor has performance advantages
> than OrderedScheduler.
>
> A bit background on this:
>
> - OrderedScheduler was introduced by me. And I changed existing
> OrderedSafeExecutor to be extending from OrderedScheduler.
> Trying to standarize to one
On Thu, Aug 23, 2018 at 6:35 AM Ivan Kelly wrote:
> >> We currently create an OrderedExecutor and an OrderedScheduler in the
> >> client. An OrderedScheduler is an OrderedExecutor. Moreover, it's very
> >> seldom used (basically for polling LAC, speculative reads and explicit
> >> flush.
> >
> >
>> We currently create an OrderedExecutor and an OrderedScheduler in the
>> client. An OrderedScheduler is an OrderedExecutor. Moreover, it's very
>> seldom used (basically for polling LAC, speculative reads and explicit
>> flush.
>
> Why do they exist? Are they only legacy from past or is there
Il gio 23 ago 2018, 12:09 Ivan Kelly ha scritto:
> Hi folks,
>
> We currently create an OrderedExecutor and an OrderedScheduler in the
> client. An OrderedScheduler is an OrderedExecutor. Moreover, it's very
> seldom used (basically for polling LAC, speculative reads and explicit
> flush.
>
Why