[concurrency-interest] Does j.u.c.SynchronousQueue's use ofInterrupt interfere with NIO AbstractInterruptibleChannel?
davidcholmes at aapt.net.au
Sun Jun 16 19:31:17 EDT 2013
SynchronousQueue does not issue interrupts. The SynchronousQueue code
responds to interrupts as a cancellation mechanism.
From: concurrency-interest-bounces at cs.oswego.edu
[mailto:concurrency-interest-bounces at cs.oswego.edu]On Behalf Of Edward
Sent: Tuesday, 4 June 2013 9:44 AM
To: concurrency-interest at cs.oswego.edu
Subject: [concurrency-interest] Does j.u.c.SynchronousQueue's use
ofInterrupt interfere with NIO AbstractInterruptibleChannel?
I've been chasing down issues with Apache Flume and Log4j2. I ~may~ be
able to explain a problem as SynchronousQueue interacting with
AbstractInterruptibleChannel but I'm not convinced my understanding is
sufficient to be certain. I decided it might be worth asking the question
here - if only for my own learning.
The problem appears to be that if a put or a take fail on the
SynchronousQueue in the AvroIpcClient then it causes an interrupt on the
Flume FileChannel thread (which uses NIO FileChannel which inherits from
The docs and code for the NIO channels show that it does not expect to be
Is SynchronousQueue actually interrupting the thread or is the use of
Interrupt in that class doing something else?
Many thanks in advance,
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Concurrency-interest