<?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>Kommentare zu: Das Java Memory Architektur (1. Akt)</title>
	<atom:link href="http://blog.codecentric.de/2010/01/java-outofmemoryerror-1-akt-das-java-memory-modell-stellt-sich-vor/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.codecentric.de/2010/01/java-outofmemoryerror-1-akt-das-java-memory-modell-stellt-sich-vor/</link>
	<description>Blog von codecentric über Agilität, Architektur, Java, Performance und Enterprise Content Management</description>
	<lastBuildDate>Wed, 08 Sep 2010 21:34:25 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>Von: Peter Veentjer</title>
		<link>http://blog.codecentric.de/2010/01/java-outofmemoryerror-1-akt-das-java-memory-modell-stellt-sich-vor/comment-page-1/#comment-2757</link>
		<dc:creator>Peter Veentjer</dc:creator>
		<pubDate>Sat, 13 Mar 2010 21:34:22 +0000</pubDate>
		<guid isPermaLink="false">http://blog.codecentric.de/?p=2808#comment-2757</guid>
		<description>Hi Mirko,

perhaps something with &quot;gc configuration&quot; could be something usable.</description>
		<content:encoded><![CDATA[<p>Hi Mirko,</p>
<p>perhaps something with &#8220;gc configuration&#8221; could be something usable.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Mirko Novakovic</title>
		<link>http://blog.codecentric.de/2010/01/java-outofmemoryerror-1-akt-das-java-memory-modell-stellt-sich-vor/comment-page-1/#comment-2754</link>
		<dc:creator>Mirko Novakovic</dc:creator>
		<pubDate>Sat, 13 Mar 2010 16:36:27 +0000</pubDate>
		<guid isPermaLink="false">http://blog.codecentric.de/?p=2808#comment-2754</guid>
		<description>Hi Peter,

I know that The Java Memory Model is more frequently used in context of the language specification http://java.sun.com/docs/books/jls/third_edition/html/memory.html#17.4 and is more relevant for concurrency issues.

I wanted to focus on the JVM Specification part to get the java.lang.OutOfMemoryError part a bit clearer. 

Maybe I should change the name of the Blog entry, what do you think would be the best name for the JVM Specification part of the memory model?

Maybe &quot;Java Memory Architecture&quot;?

Mirko</description>
		<content:encoded><![CDATA[<p>Hi Peter,</p>
<p>I know that The Java Memory Model is more frequently used in context of the language specification <a href="http://java.sun.com/docs/books/jls/third_edition/html/memory.html#17.4" rel="nofollow">http://java.sun.com/docs/books/jls/third_edition/html/memory.html#17.4</a> and is more relevant for concurrency issues.</p>
<p>I wanted to focus on the JVM Specification part to get the java.lang.OutOfMemoryError part a bit clearer. </p>
<p>Maybe I should change the name of the Blog entry, what do you think would be the best name for the JVM Specification part of the memory model?</p>
<p>Maybe &#8220;Java Memory Architecture&#8221;?</p>
<p>Mirko</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Peter Veentjer</title>
		<link>http://blog.codecentric.de/2010/01/java-outofmemoryerror-1-akt-das-java-memory-modell-stellt-sich-vor/comment-page-1/#comment-2753</link>
		<dc:creator>Peter Veentjer</dc:creator>
		<pubDate>Sat, 13 Mar 2010 16:17:34 +0000</pubDate>
		<guid isPermaLink="false">http://blog.codecentric.de/?p=2808#comment-2753</guid>
		<description>Hi Mirko,

nice post.

PS: The Java Memory Model has nothing to do with garbage collections but deals with how memory behaves when multi-threading is used; so under which guarantees writes made by one thread are going to be visible in another.

http://www.cs.umd.edu/~pugh/java/memoryModel/</description>
		<content:encoded><![CDATA[<p>Hi Mirko,</p>
<p>nice post.</p>
<p>PS: The Java Memory Model has nothing to do with garbage collections but deals with how memory behaves when multi-threading is used; so under which guarantees writes made by one thread are going to be visible in another.</p>
<p><a href="http://www.cs.umd.edu/~pugh/java/memoryModel/" rel="nofollow">http://www.cs.umd.edu/~pugh/java/memoryModel/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Kari&#8217;s World &#187; Blog Archive &#187; Thanks for the memory</title>
		<link>http://blog.codecentric.de/2010/01/java-outofmemoryerror-1-akt-das-java-memory-modell-stellt-sich-vor/comment-page-1/#comment-2751</link>
		<dc:creator>Kari&#8217;s World &#187; Blog Archive &#187; Thanks for the memory</dc:creator>
		<pubDate>Sat, 13 Mar 2010 08:12:11 +0000</pubDate>
		<guid isPermaLink="false">http://blog.codecentric.de/?p=2808#comment-2751</guid>
		<description>[...] Update: 13.3.2010 Das Java Memory Modell (1. Akt) [...]</description>
		<content:encoded><![CDATA[<p>[...] Update: 13.3.2010 Das Java Memory Modell (1. Akt) [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Mirko Novakovic</title>
		<link>http://blog.codecentric.de/2010/01/java-outofmemoryerror-1-akt-das-java-memory-modell-stellt-sich-vor/comment-page-1/#comment-2709</link>
		<dc:creator>Mirko Novakovic</dc:creator>
		<pubDate>Sun, 07 Mar 2010 17:45:52 +0000</pubDate>
		<guid isPermaLink="false">http://blog.codecentric.de/?p=2808#comment-2709</guid>
		<description>Hallo Stephan,

bitte einfach eine kleine &quot;Quelle&quot; Information drunter packen und dann kannst Du die Bilder gerne in Deiner Präsentation verwenden. Die Bilder hat übrigens Torsten aus unserem Marketing Team auf Basis meiner &quot;Skizzen&quot; gemacht.

Grüße
Mirko</description>
		<content:encoded><![CDATA[<p>Hallo Stephan,</p>
<p>bitte einfach eine kleine &#8220;Quelle&#8221; Information drunter packen und dann kannst Du die Bilder gerne in Deiner Präsentation verwenden. Die Bilder hat übrigens Torsten aus unserem Marketing Team auf Basis meiner &#8220;Skizzen&#8221; gemacht.</p>
<p>Grüße<br />
Mirko</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: stephan steiner</title>
		<link>http://blog.codecentric.de/2010/01/java-outofmemoryerror-1-akt-das-java-memory-modell-stellt-sich-vor/comment-page-1/#comment-2708</link>
		<dc:creator>stephan steiner</dc:creator>
		<pubDate>Sun, 07 Mar 2010 13:38:07 +0000</pubDate>
		<guid isPermaLink="false">http://blog.codecentric.de/?p=2808#comment-2708</guid>
		<description>Hallo Mirko

ich bin am Zusammenstellen einer Präsentation.
Dürfte ich Deine tollen Grafiken verwenden?

Besten Dank
Gruss Stephan</description>
		<content:encoded><![CDATA[<p>Hallo Mirko</p>
<p>ich bin am Zusammenstellen einer Präsentation.<br />
Dürfte ich Deine tollen Grafiken verwenden?</p>
<p>Besten Dank<br />
Gruss Stephan</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Sebastian</title>
		<link>http://blog.codecentric.de/2010/01/java-outofmemoryerror-1-akt-das-java-memory-modell-stellt-sich-vor/comment-page-1/#comment-2699</link>
		<dc:creator>Sebastian</dc:creator>
		<pubDate>Thu, 04 Mar 2010 14:58:01 +0000</pubDate>
		<guid isPermaLink="false">http://blog.codecentric.de/?p=2808#comment-2699</guid>
		<description>Hi Mirko,

danke für diesen coolen Artikel.
Er hat mir geholfen das Memory Modell besser verstehen zu können. Ich freu mich schon auf die nächsten Teile :)

Viele Grüße,
Sebastian</description>
		<content:encoded><![CDATA[<p>Hi Mirko,</p>
<p>danke für diesen coolen Artikel.<br />
Er hat mir geholfen das Memory Modell besser verstehen zu können. Ich freu mich schon auf die nächsten Teile <img src='http://blog.codecentric.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Viele Grüße,<br />
Sebastian</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Mirko</title>
		<link>http://blog.codecentric.de/2010/01/java-outofmemoryerror-1-akt-das-java-memory-modell-stellt-sich-vor/comment-page-1/#comment-2382</link>
		<dc:creator>Mirko</dc:creator>
		<pubDate>Mon, 18 Jan 2010 21:31:39 +0000</pubDate>
		<guid isPermaLink="false">http://blog.codecentric.de/?p=2808#comment-2382</guid>
		<description>Hi Siva,

thank you for your feedback. I am happy you ask these questions, as I think that some of the statements in the blog entry may be confusing...

Static values live in the Heap and not in the Permanent Generation - except numeric constants and String-constants. As the static objects live in the Heap they are treated like &quot;normal&quot; objects and all rules for Weak and Soft references do apply. In most cases I see these kind of references in combination with collections and than the reference to the static collection class (e.g. a cache) is a normal reference, but the entries are references with a weak or soft reference, e.g. by using a WeakHashMap.

The JVM specification does not mandate a garbage collection mechanism for the method area. The permanent generation of the Sun HotSpot JVM does have a Garbage Collector. If you turn on -XX:+PrintGCDetails you can see the details of the permanent generation before and after a Full GC. Only classes that are unloaded can be collected by the GC - you can see loading and unloading of classes by turning on these parameters: -XX:+TraceClassloading and -XX:+TraceClassUnloading.

I hope this helps. more details will follow and the second part of this series will be published this week.</description>
		<content:encoded><![CDATA[<p>Hi Siva,</p>
<p>thank you for your feedback. I am happy you ask these questions, as I think that some of the statements in the blog entry may be confusing&#8230;</p>
<p>Static values live in the Heap and not in the Permanent Generation &#8211; except numeric constants and String-constants. As the static objects live in the Heap they are treated like &#8220;normal&#8221; objects and all rules for Weak and Soft references do apply. In most cases I see these kind of references in combination with collections and than the reference to the static collection class (e.g. a cache) is a normal reference, but the entries are references with a weak or soft reference, e.g. by using a WeakHashMap.</p>
<p>The JVM specification does not mandate a garbage collection mechanism for the method area. The permanent generation of the Sun HotSpot JVM does have a Garbage Collector. If you turn on -XX:+PrintGCDetails you can see the details of the permanent generation before and after a Full GC. Only classes that are unloaded can be collected by the GC &#8211; you can see loading and unloading of classes by turning on these parameters: -XX:+TraceClassloading and -XX:+TraceClassUnloading.</p>
<p>I hope this helps. more details will follow and the second part of this series will be published this week.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Siva</title>
		<link>http://blog.codecentric.de/2010/01/java-outofmemoryerror-1-akt-das-java-memory-modell-stellt-sich-vor/comment-page-1/#comment-2365</link>
		<dc:creator>Siva</dc:creator>
		<pubDate>Fri, 08 Jan 2010 18:58:52 +0000</pubDate>
		<guid isPermaLink="false">http://blog.codecentric.de/?p=2808#comment-2365</guid>
		<description>Keep up the good work. I appreciate the blog. I have been looking all over the place for a clear description of the Java Memory Model without breaking my head over the Java Spec. I have not been successful in locating even a single book which talks about all aspects of the memory management in full detail. Take a look at some of these questions in my mind:
1. Where do static values live? (In Perm Gen as per the blog)
2. Is the Perm Gen space ever GCed? (Not mandatory according to blog)
3. If Perm Gen is not GCed, what happens to Weak References and Soft References to static values? Do they have any effect? Is it valid to have Weak and Soft References to Static values? (Mirko, can you please help? Not sure of the answer)</description>
		<content:encoded><![CDATA[<p>Keep up the good work. I appreciate the blog. I have been looking all over the place for a clear description of the Java Memory Model without breaking my head over the Java Spec. I have not been successful in locating even a single book which talks about all aspects of the memory management in full detail. Take a look at some of these questions in my mind:<br />
1. Where do static values live? (In Perm Gen as per the blog)<br />
2. Is the Perm Gen space ever GCed? (Not mandatory according to blog)<br />
3. If Perm Gen is not GCed, what happens to Weak References and Soft References to static values? Do they have any effect? Is it valid to have Weak and Soft References to Static values? (Mirko, can you please help? Not sure of the answer)</p>
]]></content:encoded>
	</item>
</channel>
</rss>
