HashMapの同期化をしていないと無限ループになるという話はこことかここで説明されているのでかなり有名かと思います。 今回不運にも遭遇したのは、同期化をしていなくてOutOfMemoryError(以下、OOM)が起きてしまうというケース。かなり特殊かもしれないですが、同じ問題で悩む人が今後いればと思い、記録しておきます。 再現方法 早速再現方法を。以下のようなコードを実行すると、たまにOOMが起きてしまいます。HashMapに異なるデータをputをし続けてデータが増加し続けるという単純なリークではありませんよ! ここで行っていることは、 HashMapにデータを追加(キーは0-3000までのランダムな数字)するスレッド×2 追加されたデータを全て削除するスレッド×1 を同時に実行しているだけです。キーは0-3000で固定なので、どんどんHashMapの中身が増加し続けるということはあり
あきらるブログる なかなかひとつに絞れない大好きなものを日記として残してます。 ・ソロギター ・IT ・マクロス Seasar2 SAStruts Jdk6 tomcat7 の稼動環境で、コンテキストをアンデプロイしてもメモリリークが発生しておりPermGenを食いつぶす 【現象】 JDBCで使用しているクラス群がTOMCATのクラスローダーによって使用されたため、 コンテキストのアンデプロイを実施してもクラスが解放されないため、 PermGenを食いつぶしていた。 ・jdk1.6.0_31 ・apache-tomcat-7.0.27 ・s2-framework-2.4.45 ・sa-struts-1.0.4-sp9 調査にあたり、jvisualvm.exeでメモリ状況を確認する為、TomcatConfigurationに下記を追加。 -Dcom.sun.management.jmxrem
このダイアリーでは過去に何度かSVGの記事を書いているのですが、それに対する反響で SVGって未だに使ってるところを見たことが無い とか いつになったら使えるようになるのか 永遠に普及しなさそう みたいな意見をよく見かけます。 そうした反応にカチンときた……というほどではないのですが、納得してもらうには実例を挙げて反論するのが分かりやすいだろうな、と考えてSVGの利用状況を調査してみました。 かといって個人サイトの利用例を挙げるだけでは説得力がないでしょうから、著名な企業や団体でのSVG採用事例をリストアップしてみた次第です。 そしてもう一つの動機として、Webサイトの制作現場でSVGの導入を検討する際に、同僚や上司、またクライアントからの同意を得る・説得する手段としても、既に実際に利用している企業や団体を提示できれば話を進めやすいだろうな、……といった狙いもあります。 例えば あの有名な
カメラ, IT, ガジェット, プログラミング等々, 自由気ままに気になったことを書き綴るブログです。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く