開発してるとActivityにBitmapを持たせたいことってよくある でもメンバで持ってると自前で解放しなくてはならない。 Bitmapのメモリ管理はネイティブ側で管理されてるので明示的に開放する必要がある。 マジで?って思ったので実験してみた 実験内容 以下のパターンでBitmapActivityがどのように変化するかを確認 実験1 ImageViewを持たないActivity 実験2 レイアウトでImageViewを持ったActivity 実験3 レイアウトでImageViewを持ち、メンバ変数でもImageViewをもつActivity 実験4 ImageViewを持ち、メンバ変数でBitmapをもつActivity 実験5 Bitmap#recycleの正しい使い方 使うアプリ こんな感じのアプリ 実験2〜4 MainActivity>BitmapActivity>(戻るキーで)

Androidアプリを開発していると、たまにOutOfMemoryに遭遇する。そういう時に便利な、メモリリークの調査方法を紹介する。 以下のサイトを参考にさせてもらった。 Memory Analysis forAndroid Applications メモリリークを発見!Androidアプリのメモリ解析手法 上記のサイトは、手順がわかりにくい箇所もあったので、補足の意味で書こうと思う。 メモリリークを調査するには? メモリリークを調査する、と言われても、なかなかピンとこない。しかし、やっていることは簡単。 アプリケーションを操作する ガベージコレクション(GC)を走らせる ヒープメモリの状態を取得 ヒープメモリを見る ガベージコレクション(GC)で回収できていないメモリを探す という5つの手順だけ。これで回収できていないメモリがあれば、回収できるように参照を消したりする必要がある(ここが
Android、いかがですか。 今日もOut Of Memory、出していますでしょうか。 そんなあなたに朗報です。 少しでもメモリにやさしいプログラムを。 今日はSoftReferenceのお話です。 トレードオフAndroidで(というよりもJavaで)パフォーマンスに最も影響を与えるのはインスタンス生成の部分ではないでしょうか。 ループの中でインスタンスを生成しようものなら、たちまちあなたのUIは機敏さを失うことになるでしょう。 インスタンス生成はGCの源です。ストップザワールドを少しでも避けるためには極力newなどは控えなければなりません。 となると、インスタンスを作らないことが究極なのですが、全く作らないというわけにはいきません。ならば、一度作ったインスタンスは再利用しようではありませんか。 その時に役に立つのがキャッシュです。一度作ったインスタンスはキャッシュに保持し
●大容量メモリを活用するために 前回もお伝えしたメモリ価格の低落は、相変わらず止まらない。すでに底値に近いと見られていた1GB DIMMはほぼ下げ止まってきたが、2GB DIMMの最安値は3,780円と、1,000円以上も下がった。こうした、いわゆる最安値のノーブランド/バルク品のメモリ価格に引きずられるように、保証が付いたブランド品のメモリも下がり続けており、前回筆者が1枚1万円弱で購入した2GB DIMMを、今週は6,000円強で購入することができた。1週間で3,000円あまりも価格が低下したことになる。 こうしたメモリ価格の低下は、メモリメーカーの収益を直撃していることは間違いない。また、これだけDDR2メモリの価格が安くなってしまっては、DDR3メモリへの移行はかなり難しくなる。現時点でDDR2メモリ最速がDDR2-800なのに対し、DDR3メモリの最速はDDR3-1333だが、こ
対象OS:Windows 2000/Windows XP/Windows Server 2003/Windows Vista/Windows Server 2008 解説 現在のx86アーキテクチャのCPUでは、ハードウェア的には36bitの物理アドレス空間(64Gbytes)をサポートしている。元々のx86アーキテクチャでは32bitの物理アドレス空間(4Gbytes)しかサポートされていなかったが、Pentium Pro以降では、PAE(Physical Address Extension、物理アドレス拡張)やPSE(Page Size Extension、ページ・サイズ拡張)といった技術を導入することにより、4Gbytes以上のメモリがサポートされている。だが32bit版の(主にクライアント向けの)Windows OSでは、基本的には4Gbytesまでの物理メモリしか扱えないようにな

この記事は、これから数か月にわたって投稿する「Windows の限界に挑む」というシリーズの記事の 1 回目の投稿です。このシリーズでは、Windows やアプリケーションでの特定のリソースの使用方法、ライセンスや実装に由来するリソースの制限、リソースの使用状況を測定する方法、およびリークを診断する方法について説明します。Windows システムを効果的に管理できるようにするために、物理リソース (CPU やメモリなど) および論理リソース (仮想メモリ、ハンドル、ウィンドウ マネージャー オブジェクトなど) をWindows でどのように管理しているかを理解しておく必要があります。これらのリソースの制限と、リソースの使用状況の追跡方法を理解することによって、リソースを利用するアプリケーションごとにリソースの使用状況を見極めたり、特定の作業負荷に応じてシステムのサイズを効果的に変更したり

1リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く