タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

javaとmemoryに関するnobeansのブックマーク (2)

  • Deep Side of Java~Java 言語再入門 第4回 ~ スレッドの使い方

    スレッドって何? そもそもスレッドは、コルーチン(非同期に協同して動作するサブルーチン)を形式化して生まれたものである。UNIXでは往々にして複数のプロセスを生成して、それらを協同させて何かの処理をさせることがあるが、複数のプロセスを作ってしまうと、それらは独自のメモリ空間で動作するので、データ共有に別な仕掛けが必要となって協同作用の幅が狭まってしまう。そこで、「軽量プロセス」、プロセスと同じく独自のスケジューリングを持つが、それでも独自のプロセスとまでは言えないような、あるプロセスに従属した「軽いプロセス」によるプログラミングモデルが開発され、これを一般に「スレッド」を呼ぶ。 なぜこのようにスレッドが重視されているのか、という理由にはこの「スレッド・プログラミング・モデル」が柔軟にコルーチンを実現できることの他に、マルチプロセッサ環境で非常に効率的なパフォーマンスが実現できることがある。

  • JavaVMのメモリ管理をマスターする

    Webシステムの安定動作には、メモリ使用量の適切な見積もりが不可欠。だがJavaVMでメモリがどのように管理されるかを理解しているだろうか? メモリに関する問題が発生すると、知識や技術資料の不足によって問題が長期化しがち。JavaVMでどのようにメモリが管理されているかを理解し、正確なメモリサイジングやメモリ関係のトラブルの早期解決へとつなげよう。 JavaVMのメモリ構造を理解しよう まず、JavaVMがどのようにメモリを使っているかを理解しておこう。JavaVMがプログラムを実行すると、Javaのプロセスによってメモリが使用される。Javaのプロセスでは、Javaヒープ、Permヒープ、Cヒープ、およびスレッドスタックという4つのメモリ領域を使用する。 Javaヒープはアプリケーションプログラムの各種オブジェクトを格納する領域であり、Classのnewで確保される。JavaヒープはNe

    JavaVMのメモリ管理をマスターする
  • 1