<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Asynchronous processing in Java applications &#8211; leveraging those multi-cores</title>
	<atom:link href="http://technology.amis.nl/2009/02/19/asynchronous-processing-in-java-applications-leveraging-those-multi-cores/feed/" rel="self" type="application/rss+xml" />
	<link>http://technology.amis.nl/2009/02/19/asynchronous-processing-in-java-applications-leveraging-those-multi-cores/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=asynchronous-processing-in-java-applications-leveraging-those-multi-cores</link>
	<description></description>
	<lastBuildDate>Tue, 11 Jun 2013 22:09:58 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
	<item>
		<title>By: Abel</title>
		<link>http://technology.amis.nl/2009/02/19/asynchronous-processing-in-java-applications-leveraging-those-multi-cores/#comment-5713</link>
		<dc:creator>Abel</dc:creator>
		<pubDate>Thu, 23 Feb 2012 14:34:00 +0000</pubDate>
		<guid isPermaLink="false">http://technology.amis.nl/blog/?p=4859#comment-5713</guid>
		<description><![CDATA[Fantastic article. I have been getting stumped on async execution and always wondered how best to do it. This will atelast give me a very good guide on how to implement it.]]></description>
		<content:encoded><![CDATA[<p>Fantastic article. I have been getting stumped on async execution and always wondered how best to do it. This will atelast give me a very good guide on how to implement it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: AruKris</title>
		<link>http://technology.amis.nl/2009/02/19/asynchronous-processing-in-java-applications-leveraging-those-multi-cores/#comment-5712</link>
		<dc:creator>AruKris</dc:creator>
		<pubDate>Fri, 17 Feb 2012 06:39:12 +0000</pubDate>
		<guid isPermaLink="false">http://technology.amis.nl/blog/?p=4859#comment-5712</guid>
		<description><![CDATA[Excellent, well written article on Executors . Thanks &amp; Thanks.]]></description>
		<content:encoded><![CDATA[<p>Excellent, well written article on Executors . Thanks &amp; Thanks.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Quidam7</title>
		<link>http://technology.amis.nl/2009/02/19/asynchronous-processing-in-java-applications-leveraging-those-multi-cores/#comment-5711</link>
		<dc:creator>Quidam7</dc:creator>
		<pubDate>Fri, 20 Jan 2012 20:45:40 +0000</pubDate>
		<guid isPermaLink="false">http://technology.amis.nl/blog/?p=4859#comment-5711</guid>
		<description><![CDATA[Clear and educationalist. Thanks a lot for sharing this !]]></description>
		<content:encoded><![CDATA[<p>Clear and educationalist. Thanks a lot for sharing this !</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ecomba</title>
		<link>http://technology.amis.nl/2009/02/19/asynchronous-processing-in-java-applications-leveraging-those-multi-cores/#comment-5710</link>
		<dc:creator>ecomba</dc:creator>
		<pubDate>Sat, 07 Jan 2012 22:18:40 +0000</pubDate>
		<guid isPermaLink="false">http://technology.amis.nl/blog/?p=4859#comment-5710</guid>
		<description><![CDATA[Very interesting and very well written article. Thanks a lot!]]></description>
		<content:encoded><![CDATA[<p>Very interesting and very well written article. Thanks a lot!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: swaroop</title>
		<link>http://technology.amis.nl/2009/02/19/asynchronous-processing-in-java-applications-leveraging-those-multi-cores/#comment-5709</link>
		<dc:creator>swaroop</dc:creator>
		<pubDate>Sat, 17 Dec 2011 18:30:17 +0000</pubDate>
		<guid isPermaLink="false">http://technology.amis.nl/blog/?p=4859#comment-5709</guid>
		<description><![CDATA[Very well drafted article.....]]></description>
		<content:encoded><![CDATA[<p>Very well drafted article&#8230;..</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Shachi</title>
		<link>http://technology.amis.nl/2009/02/19/asynchronous-processing-in-java-applications-leveraging-those-multi-cores/#comment-5708</link>
		<dc:creator>Shachi</dc:creator>
		<pubDate>Tue, 13 Dec 2011 10:52:56 +0000</pubDate>
		<guid isPermaLink="false">http://technology.amis.nl/blog/?p=4859#comment-5708</guid>
		<description><![CDATA[Very well explained ...]]></description>
		<content:encoded><![CDATA[<p>Very well explained &#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joboski</title>
		<link>http://technology.amis.nl/2009/02/19/asynchronous-processing-in-java-applications-leveraging-those-multi-cores/#comment-5707</link>
		<dc:creator>Joboski</dc:creator>
		<pubDate>Sun, 27 Nov 2011 12:46:29 +0000</pubDate>
		<guid isPermaLink="false">http://technology.amis.nl/blog/?p=4859#comment-5707</guid>
		<description><![CDATA[Superb article!!]]></description>
		<content:encoded><![CDATA[<p>Superb article!!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sanjay</title>
		<link>http://technology.amis.nl/2009/02/19/asynchronous-processing-in-java-applications-leveraging-those-multi-cores/#comment-5706</link>
		<dc:creator>Sanjay</dc:creator>
		<pubDate>Tue, 19 Jan 2010 12:20:44 +0000</pubDate>
		<guid isPermaLink="false">http://technology.amis.nl/blog/?p=4859#comment-5706</guid>
		<description><![CDATA[Very good explaination..Very well written article..]]></description>
		<content:encoded><![CDATA[<p>Very good explaination..Very well written article..</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bill</title>
		<link>http://technology.amis.nl/2009/02/19/asynchronous-processing-in-java-applications-leveraging-those-multi-cores/#comment-5705</link>
		<dc:creator>Bill</dc:creator>
		<pubDate>Tue, 19 May 2009 21:28:43 +0000</pubDate>
		<guid isPermaLink="false">http://technology.amis.nl/blog/?p=4859#comment-5705</guid>
		<description><![CDATA[It&#039;s a pretty clear article.  I especially appreciate the example code to show callbacks vs ExecutorCompletionService - I had assumed I must be missing something since callbacks are obviously part of a fully asynchronous request/response, but are not discussed in java.util.concurrent.  Future is ok, but with get() and take() it seems to be only 1-way async. The JSR 166 group apparently considered the issue but did not include callbacks (http://osdir.com/ml/java.jsr.166-concurrency/2002-09/msg00068.html).

Another way to use util.concurrent 2-way async without callbacks would be to have an executor run a &quot;request service&quot; and also run a second queue back to a &quot;response handling service.&quot;  That way you get the benefit of queueing, and you can free up the &quot;request service&quot; threads a little sooner. But callbacks will work well in many situations where response handling is fast (setting values or using in-memory data structures).  The javadocs for javax.xml.ws.Service hint that Service may use this strategy.

One suggestion: change the formatting a little - there are some long lines with &quot;2 lines of code&quot; on them.  I was initially confused because I was reading with a large font size, and the 2nd line (very important code) was invisible off to the right of the text box.

This is the line that clued me in to the problem, since I originally did not see &quot;cs&quot; defined:

        ExecutorService es = Executors.newFixedThreadPool(3);        CompletionService cs = new ExecutorCompletionService(es);]]></description>
		<content:encoded><![CDATA[<p>It&#8217;s a pretty clear article.  I especially appreciate the example code to show callbacks vs ExecutorCompletionService &#8211; I had assumed I must be missing something since callbacks are obviously part of a fully asynchronous request/response, but are not discussed in java.util.concurrent.  Future is ok, but with get() and take() it seems to be only 1-way async. The JSR 166 group apparently considered the issue but did not include callbacks (<a href="http://osdir.com/ml/java.jsr.166-concurrency/2002-09/msg00068.html" rel="nofollow">http://osdir.com/ml/java.jsr.166-concurrency/2002-09/msg00068.html</a>).</p>
<p>Another way to use util.concurrent 2-way async without callbacks would be to have an executor run a &#8220;request service&#8221; and also run a second queue back to a &#8220;response handling service.&#8221;  That way you get the benefit of queueing, and you can free up the &#8220;request service&#8221; threads a little sooner. But callbacks will work well in many situations where response handling is fast (setting values or using in-memory data structures).  The javadocs for javax.xml.ws.Service hint that Service may use this strategy.</p>
<p>One suggestion: change the formatting a little &#8211; there are some long lines with &#8220;2 lines of code&#8221; on them.  I was initially confused because I was reading with a large font size, and the 2nd line (very important code) was invisible off to the right of the text box.</p>
<p>This is the line that clued me in to the problem, since I originally did not see &#8220;cs&#8221; defined:</p>
<p>        ExecutorService es = Executors.newFixedThreadPool(3);        CompletionService cs = new ExecutorCompletionService(es);</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Josef</title>
		<link>http://technology.amis.nl/2009/02/19/asynchronous-processing-in-java-applications-leveraging-those-multi-cores/#comment-5704</link>
		<dc:creator>Josef</dc:creator>
		<pubDate>Sat, 28 Feb 2009 14:16:39 +0000</pubDate>
		<guid isPermaLink="false">http://technology.amis.nl/blog/?p=4859#comment-5704</guid>
		<description><![CDATA[Very well done article.  One of the best I have seen explaining the concepts.  Thanks.]]></description>
		<content:encoded><![CDATA[<p>Very well done article.  One of the best I have seen explaining the concepts.  Thanks.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
