<?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 for A N M Bazlur Rahman	</title>
	<atom:link href="https://bazlur.ca/comments/feed/" rel="self" type="application/rss+xml" />
	<link>https://bazlur.ca/</link>
	<description>Java Champion 🏆 Empowering Developers through Speaking 🗣️ Writing ✍️ Mentoring 🤝 &#38; Community Building 🌍 Published Author 📖 Contributing Editor at InfoQ and Foojay.IO</description>
	<lastBuildDate>Sun, 08 Oct 2023 02:44:20 +0000</lastBuildDate>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.5</generator>
	<item>
		<title>
		Comment on Web Crawling in Java: A Tale of Classical Threads and Virtual Threads by A N M Bazlur Rahman		</title>
		<link>https://bazlur.ca/2023/09/29/web-crawling-in-java-a-tale-of-classical-threads-and-virtual-threads/#comment-42</link>

		<dc:creator><![CDATA[A N M Bazlur Rahman]]></dc:creator>
		<pubDate>Sun, 08 Oct 2023 02:44:20 +0000</pubDate>
		<guid isPermaLink="false">https://foojay.io/?p=102433#comment-42</guid>

					<description><![CDATA[In reply to &lt;a href=&quot;https://bazlur.ca/2023/09/29/web-crawling-in-java-a-tale-of-classical-threads-and-virtual-threads/#comment-41&quot;&gt;Torsten&lt;/a&gt;.

This has a potential data race, and I will fix it soon.]]></description>
			<content:encoded><![CDATA[<p>In reply to <a href="https://bazlur.ca/2023/09/29/web-crawling-in-java-a-tale-of-classical-threads-and-virtual-threads/#comment-41">Torsten</a>.</p>
<p>This has a potential data race, and I will fix it soon.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Comment on Web Crawling in Java: A Tale of Classical Threads and Virtual Threads by Torsten		</title>
		<link>https://bazlur.ca/2023/09/29/web-crawling-in-java-a-tale-of-classical-threads-and-virtual-threads/#comment-41</link>

		<dc:creator><![CDATA[Torsten]]></dc:creator>
		<pubDate>Sat, 07 Oct 2023 19:23:25 +0000</pubDate>
		<guid isPermaLink="false">https://foojay.io/?p=102433#comment-41</guid>

					<description><![CDATA[How come that both variants crawled a different number of pages? In particular the virtual threads variant didn&#039;t seem to honor the MAX_PAGES_TO_SEARCH=100 limit. What&#039;s wrong here?]]></description>
			<content:encoded><![CDATA[<p>How come that both variants crawled a different number of pages? In particular the virtual threads variant didn&#8217;t seem to honor the MAX_PAGES_TO_SEARCH=100 limit. What&#8217;s wrong here?</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Comment on Exploring the Impact of Stack Size on JVM Thread Creation: A Myth Debunked by Volker Simonis		</title>
		<link>https://bazlur.ca/2023/09/20/exploring-the-impact-of-stack-size-on-jvm-thread-creation-a-myth-debunked/#comment-40</link>

		<dc:creator><![CDATA[Volker Simonis]]></dc:creator>
		<pubDate>Fri, 29 Sep 2023 11:40:27 +0000</pubDate>
		<guid isPermaLink="false">https://foojay.io/?p=102290#comment-40</guid>

					<description><![CDATA[The stack size you set is a &quot;virtual&quot; size which gets committed (i.e. backed by physical memory) pagewise if you use it. In your toy example your thread stacks barely use more than a single page (plus the internal shadow pages - see https://pangin.pro/posts/stack-overflow-handling for the details).

You can use tools Like pmap to see the exact reserved (i.e. virtual) and committed (i.e. physical or RSS) memory consumption of each thread.]]></description>
			<content:encoded><![CDATA[<p>The stack size you set is a &#8220;virtual&#8221; size which gets committed (i.e. backed by physical memory) pagewise if you use it. In your toy example your thread stacks barely use more than a single page (plus the internal shadow pages &#8211; see <a href="https://pangin.pro/posts/stack-overflow-handling" rel="nofollow ugc">https://pangin.pro/posts/stack-overflow-handling</a> for the details).</p>
<p>You can use tools Like pmap to see the exact reserved (i.e. virtual) and committed (i.e. physical or RSS) memory consumption of each thread.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Comment on Exploring the Impact of Stack Size on JVM Thread Creation: A Myth Debunked by Java Weekly, Issue 509 &#124; Baeldung		</title>
		<link>https://bazlur.ca/2023/09/20/exploring-the-impact-of-stack-size-on-jvm-thread-creation-a-myth-debunked/#comment-39</link>

		<dc:creator><![CDATA[Java Weekly, Issue 509 &#124; Baeldung]]></dc:creator>
		<pubDate>Fri, 29 Sep 2023 08:35:12 +0000</pubDate>
		<guid isPermaLink="false">https://foojay.io/?p=102290#comment-39</guid>

					<description><![CDATA[[&#8230;] &#062;&#062; Exploring the Impact of Stack Size on JVM Thread Creation: A Myth Debunked [foojay.io] [&#8230;]]]></description>
			<content:encoded><![CDATA[<p>[&#8230;] &gt;&gt; Exploring the Impact of Stack Size on JVM Thread Creation: A Myth Debunked [foojay.io] [&#8230;]</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Comment on Exploring the Impact of Stack Size on JVM Thread Creation: A Myth Debunked by Amadou Sonko		</title>
		<link>https://bazlur.ca/2023/09/20/exploring-the-impact-of-stack-size-on-jvm-thread-creation-a-myth-debunked/#comment-38</link>

		<dc:creator><![CDATA[Amadou Sonko]]></dc:creator>
		<pubDate>Fri, 22 Sep 2023 07:49:07 +0000</pubDate>
		<guid isPermaLink="false">https://foojay.io/?p=102290#comment-38</guid>

					<description><![CDATA[Hello,

Interesting facts, but I think the study would be more reliable if it was also conducted on different operating systems and/or machines with different capacities.]]></description>
			<content:encoded><![CDATA[<p>Hello,</p>
<p>Interesting facts, but I think the study would be more reliable if it was also conducted on different operating systems and/or machines with different capacities.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Comment on Thread-Safe Counter in Java: A Comprehensive Guide by A N M Bazlur Rahman		</title>
		<link>https://bazlur.ca/2023/08/17/thread-safe-counter-in-java-a-comprehensive-guide/#comment-37</link>

		<dc:creator><![CDATA[A N M Bazlur Rahman]]></dc:creator>
		<pubDate>Sat, 02 Sep 2023 00:56:58 +0000</pubDate>
		<guid isPermaLink="false">https://foojay.io/?p=101912#comment-37</guid>

					<description><![CDATA[In reply to &lt;a href=&quot;https://bazlur.ca/2023/08/17/thread-safe-counter-in-java-a-comprehensive-guide/#comment-35&quot;&gt;D&lt;/a&gt;.

Thank you for pointing out the oversight in the ReentrantLock example. You&#039;re absolutely correct; I&#039;ve updated the example to reflect the correction.]]></description>
			<content:encoded><![CDATA[<p>In reply to <a href="https://bazlur.ca/2023/08/17/thread-safe-counter-in-java-a-comprehensive-guide/#comment-35">D</a>.</p>
<p>Thank you for pointing out the oversight in the ReentrantLock example. You&#8217;re absolutely correct; I&#8217;ve updated the example to reflect the correction.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Comment on Thread-Safe Counter in Java: A Comprehensive Guide by A N M Bazlur Rahman		</title>
		<link>https://bazlur.ca/2023/08/17/thread-safe-counter-in-java-a-comprehensive-guide/#comment-36</link>

		<dc:creator><![CDATA[A N M Bazlur Rahman]]></dc:creator>
		<pubDate>Sat, 02 Sep 2023 00:55:35 +0000</pubDate>
		<guid isPermaLink="false">https://foojay.io/?p=101912#comment-36</guid>

					<description><![CDATA[In reply to &lt;a href=&quot;https://bazlur.ca/2023/08/17/thread-safe-counter-in-java-a-comprehensive-guide/#comment-34&quot;&gt;Jack&lt;/a&gt;.

Thank you for your feedback, and I apologize for not meeting your expectations with the article. Your comments are taken seriously, and they provide valuable insights for improvement.

To address your concerns:

&lt;strong&gt;ReentrantLock Over Synchronization:&lt;/strong&gt; In Java, ReentrantLock provides more functionalities than traditional synchronized blocks. For instance, it allows you to back out of an attempt to acquire a lock, interrupt thread waiting for a lock, or try to acquire a lock for a specific amount of time. This gives you greater control over lock acquisition and release, potentially leading to more efficient concurrent code.

&lt;strong&gt;Unsafe and VarHandle:&lt;/strong&gt; These are low-level classes that offer fine-grained control over memory operations and concurrency control. Unsafe allows you to perform operations like direct memory access, which bypasses the JVM&#039;s safety checks. VarHandle provides similar capabilities but in a safer manner. However, these should be used with caution because the absence of safety checks can lead to complex and error-prone code.

I hope this clears up some of your questions. Once again, I appreciate your feedback and will strive to improve the quality of future articles. If you have more questions or need further clarification, feel free to ask.]]></description>
			<content:encoded><![CDATA[<p>In reply to <a href="https://bazlur.ca/2023/08/17/thread-safe-counter-in-java-a-comprehensive-guide/#comment-34">Jack</a>.</p>
<p>Thank you for your feedback, and I apologize for not meeting your expectations with the article. Your comments are taken seriously, and they provide valuable insights for improvement.</p>
<p>To address your concerns:</p>
<p><strong>ReentrantLock Over Synchronization:</strong> In Java, ReentrantLock provides more functionalities than traditional synchronized blocks. For instance, it allows you to back out of an attempt to acquire a lock, interrupt thread waiting for a lock, or try to acquire a lock for a specific amount of time. This gives you greater control over lock acquisition and release, potentially leading to more efficient concurrent code.</p>
<p><strong>Unsafe and VarHandle:</strong> These are low-level classes that offer fine-grained control over memory operations and concurrency control. Unsafe allows you to perform operations like direct memory access, which bypasses the JVM&#8217;s safety checks. VarHandle provides similar capabilities but in a safer manner. However, these should be used with caution because the absence of safety checks can lead to complex and error-prone code.</p>
<p>I hope this clears up some of your questions. Once again, I appreciate your feedback and will strive to improve the quality of future articles. If you have more questions or need further clarification, feel free to ask.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Comment on Thread-Safe Counter in Java: A Comprehensive Guide by D		</title>
		<link>https://bazlur.ca/2023/08/17/thread-safe-counter-in-java-a-comprehensive-guide/#comment-35</link>

		<dc:creator><![CDATA[D]]></dc:creator>
		<pubDate>Mon, 28 Aug 2023 19:55:00 +0000</pubDate>
		<guid isPermaLink="false">https://foojay.io/?p=101912#comment-35</guid>

					<description><![CDATA[The second example with lock looks like not correct. It reads count without using lock. If a reading thread is running on a different CPU from updating thread it is possible that getCount returns stale value from local CPU cache. This example may work in most cases but fail on some CPU, OS. The first example correctly use synchronized to ensure that the latest counter value is returned.]]></description>
			<content:encoded><![CDATA[<p>The second example with lock looks like not correct. It reads count without using lock. If a reading thread is running on a different CPU from updating thread it is possible that getCount returns stale value from local CPU cache. This example may work in most cases but fail on some CPU, OS. The first example correctly use synchronized to ensure that the latest counter value is returned.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Comment on Thread-Safe Counter in Java: A Comprehensive Guide by Jack		</title>
		<link>https://bazlur.ca/2023/08/17/thread-safe-counter-in-java-a-comprehensive-guide/#comment-34</link>

		<dc:creator><![CDATA[Jack]]></dc:creator>
		<pubDate>Sun, 27 Aug 2023 16:02:09 +0000</pubDate>
		<guid isPermaLink="false">https://foojay.io/?p=101912#comment-34</guid>

					<description><![CDATA[No, just no! You did not explain anything!
&quot;While synchronization is simple and effective, it doesn&#039;t provide flexibility in handling lock acquisition and release. Java&#039;s ReentrantLock gives us more control and can lead to more efficient concurrent code. &quot; Why is that? And what is ReentrantLock? &quot;Unsafe and VarHandle are two such tools that provide low-level operations for concurrency control and memory management. However, they should be used with caution as they can lead to complex and error-prone code.&quot; Why is that? And what are these classes? This article transfers almost no knowledge. I came here from baeldung which used to collect really good articles but these times are over, I think.]]></description>
			<content:encoded><![CDATA[<p>No, just no! You did not explain anything!<br />
&#8220;While synchronization is simple and effective, it doesn&#8217;t provide flexibility in handling lock acquisition and release. Java&#8217;s ReentrantLock gives us more control and can lead to more efficient concurrent code. &#8221; Why is that? And what is ReentrantLock? &#8220;Unsafe and VarHandle are two such tools that provide low-level operations for concurrency control and memory management. However, they should be used with caution as they can lead to complex and error-prone code.&#8221; Why is that? And what are these classes? This article transfers almost no knowledge. I came here from baeldung which used to collect really good articles but these times are over, I think.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Comment on Sealed Interfaces and Pattern Matching: A Quick Dive into Java&#8217;s Modern Capabilities by Java Weekly, Issue 503 &#124; Baeldung		</title>
		<link>https://bazlur.ca/2023/08/09/sealed-interfaces-and-pattern-matching-a-quick-dive-into-javas-modern-capabilities/#comment-31</link>

		<dc:creator><![CDATA[Java Weekly, Issue 503 &#124; Baeldung]]></dc:creator>
		<pubDate>Fri, 18 Aug 2023 12:05:05 +0000</pubDate>
		<guid isPermaLink="false">https://foojay.io/?p=101649#comment-31</guid>

					<description><![CDATA[[&#8230;] &#062;&#062; Sealed Interfaces and Pattern Matching: A Quick Dive into Java’s Modern Capabilities [foojay.io] [&#8230;]]]></description>
			<content:encoded><![CDATA[<p>[&#8230;] &gt;&gt; Sealed Interfaces and Pattern Matching: A Quick Dive into Java’s Modern Capabilities [foojay.io] [&#8230;]</p>
]]></content:encoded>
		
			</item>
	</channel>
</rss>
