Up Top

Class のロード/リンク/初期化 : リンク処理(Linking)


概要(Summary)

クラスのリンク処理は instanceKlass::link_class() (正確には instanceKlass::link_class_impl()) に実装されている.

HotSpot 内では, クラスをロードした後でも, 実際に使用されるまでは未リンク(&未初期化)のままとしている. このため, 必要になったタイミングで適宜リンク処理が開始される (See: here for details)

instanceKlass::link_class() (instanceKlass::link_class_impl()) 内では, 対象のクラスがまだリンクされていなければ, リンク処理を行う (See: here for details).

リンク処理中では, バイトコードの verification 処理が行われる (See: here for details). また, rewrite 処理 (高速化のために HotSpot 独自のバイトコードに置き換える処理) も行われる (See: here for details).

Subcategories


This document is available under the GNU GENERAL PUBLIC LICENSE Version 2.