JPH096616A - Method search method - Google Patents

Method search method

Info

Publication number
JPH096616A
JPH096616A JP7154173A JP15417395A JPH096616A JP H096616 A JPH096616 A JP H096616A JP 7154173 A JP7154173 A JP 7154173A JP 15417395 A JP15417395 A JP 15417395A JP H096616 A JPH096616 A JP H096616A
Authority
JP
Japan
Prior art keywords
link
search
message
cached
meth
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP7154173A
Other languages
Japanese (ja)
Inventor
Kazuo Arita
一穂 有田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP7154173A priority Critical patent/JPH096616A/en
Publication of JPH096616A publication Critical patent/JPH096616A/en
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PURPOSE: To provide a high-speed method search method which reduces the calculation load for method search in a dynamic object-oriented system. CONSTITUTION: Method cache tables 204 to 206 are provided in objects 201 to 203 having succession relations, and names of methods which are started in the first operation by tracing and succeeding super objects and links to these methods are stored. When a message is received to start a method in second and following operations, method cache tables 204 to 206 are retrieved to acquire the cached link, and the method indicated by this link is started. Since information for first method search is held in objects 201 to 203 in this manner, the need for tracing the super objects is eliminated at the time of a second and following method search to reduce the calculation load for method search, and the method search speed is increased.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】動的なオブジェクト指向システム
では、あらかじめメソッドのアドレスを計算することが
不可能であるため、実行時に使用するメソッドを検索し
て決定する。本発明は、このような動的オブジェクト指
向システムにおいて、スーパーオブジェクトから継承し
たメソッドを実行する場合のメソッドサーチの方法に関
するものである。
[Industrial application] Since it is impossible to calculate the address of a method in advance in a dynamic object-oriented system, the method to be used at the time of execution is searched and determined. The present invention relates to a method search method for executing a method inherited from a super object in such a dynamic object oriented system.

【0002】[0002]

【従来の技術】まず、動的なオブジェクト指向システム
について説明する。
2. Description of the Related Art First, a dynamic object-oriented system will be described.

【0003】従来の一般的なソフトウェアはデータと処
理を記述した手続きにより構成される。処理の内容別に
手続きを既述し、手続きにデータを引数として渡すこと
により計算を行う。これに対しオブジェクト指向システ
ムでは、データの型に対応して手続きを記述し、手続呼
び出しの際に引数のデータ型に従って最適な手続きをシ
ステムが自動的に決定することを特徴とする。この手続
きをメソッドと呼び、データとメソッドを一体化したも
のをオブジェクトと呼ぶ。
Conventional general software is composed of data and a procedure describing a process. The procedure is described according to the content of the process, and the calculation is performed by passing the data as an argument to the procedure. On the other hand, the object-oriented system is characterized in that a procedure is described according to the type of data, and the system automatically determines the optimum procedure according to the data type of the argument when the procedure is called. This procedure is called a method, and the combination of data and method is called an object.

【0004】オブジェクトの内部で何らかのデータを保
持する領域をスロットと呼ぶ。コンピュータのメモリ上
ではスロットはポインタとして実現される。たとえば配
列を格納するスロットは実際には前記配列へのポインタ
として実現され、スロットの参照は前記ポインタを介し
て行われる。同様にメソッドは手続きへのポインタとし
て実装される。
An area for holding some data inside an object is called a slot. The slot is realized as a pointer in the memory of the computer. For example, a slot storing an array is actually realized as a pointer to the array, and the reference to the slot is made via the pointer. Similarly, methods are implemented as pointers to procedures.

【0005】オブジェクト同士はメッセージを利用して
交信する。計算の依頼、返答など全ての情報の伝達には
メッセージが使われる。メッセージは依頼の種類と任意
長のパラメータの列から構成される。メッセージを受信
したオブジェクトは、パラメータのデータ型に従って実
行すべきメソッドを決定し、該当するメソッドを実行す
る。
Objects communicate with each other using messages. Messages are used to convey all information such as calculation requests and replies. The message consists of a sequence of request types and parameters of arbitrary length. The object receiving the message determines the method to be executed according to the data type of the parameter and executes the corresponding method.

【0006】プログラミングにおいて、ほとんどの部分
は同じで一部だけ異なったモジュールを作成する場合、
従来はもととなるモジュールを複製した後、新しい名前
を付与し、異なる部分に対応した変更を行っていた。こ
れに対しオブジェクトは階層構造を持ち、任意のオブジ
ェクトは上位階層で定義されたスロットやメソッドを利
用することができる。これを継承と呼ぶ。
In programming, if you make a module that is mostly the same but only different,
In the past, after copying the original module, a new name was given and changes were made to accommodate different parts. On the other hand, objects have a hierarchical structure, and any object can use the slots and methods defined in the upper hierarchy. This is called inheritance.

【0007】継承の階層構造はあるオブジェクトから一
つ上位の階層のオブジェクトへのポインタとして実装さ
れ、オブジェクトはノードとして実装される。このポイ
ンタとノードにより樹状あるいはネットワーク状の継承
構造が実現される。
The inheritance hierarchical structure is implemented as a pointer from an object to an object in the next higher hierarchy, and the objects are implemented as nodes. A tree-like or network-like inheritance structure is realized by these pointers and nodes.

【0008】継承の階層構造において上位階層のオブジ
ェクトをスーパーオブジェクト、下位階層のオブジェク
トをサブオブジェクトと呼ぶ。特に一つ上位のオブジェ
クトをダイレクトスーパーオブジェクト、一つ下位のオ
ブジェクトをダイレクトサブオブジェクトと呼ぶ。
In the inheritance hierarchical structure, the upper hierarchy object is called a super object, and the lower hierarchy object is called a sub object. In particular, the object one level above is called the direct super object, and the object one level below is called the direct sub-object.

【0009】C++などの静的なオブジェクト指向システ
ムは、コンパイル時にあらかじめメソッドとデータのア
ドレスを計算しておき、プログラムの実行時には求めて
おいたアドレスをもとに計算を行う。これに対して動的
なオブジェクト指向システムは、プログラムの実行時に
メッセージ名とパラメータのデータ型をもとに実行すべ
きメソッドのアドレスとデータのアドレスを決定して計
算を行う。これを動的なメソッド起動と呼び、このよう
な特徴を備えたオブジェクト指向システムを動的オブジ
ェクト指向システムと呼ぶ。
In a static object-oriented system such as C ++, the addresses of methods and data are calculated in advance at the time of compiling, and the addresses are calculated at the time of executing the program. On the other hand, the dynamic object-oriented system determines the address of the method to be executed and the address of the data based on the message name and the data type of the parameter at the time of executing the program, and performs the calculation. This is called dynamic method invocation, and an object-oriented system having such characteristics is called a dynamic object-oriented system.

【0010】動的なオブジェクト指向システムでは、メ
ッセージを受信したときに最適なメソッドを決定して起
動するが、メッセージを受信したオブジェクトに目的と
するメソッドが定義されておらず、スーパーオブジェク
トからの継承を利用して起動する場合が考えられる。こ
の場合、ダイレクトスーパーオブジェクトへのポインタ
を辿りながら目的とするメソッドを検索し、見つかった
メソッドを起動する。この継承の上位階層へ向けてのメ
ソッドの検索をメソッドサーチと呼ぶ。
In a dynamic object-oriented system, when a message is received, the optimum method is determined and activated, but the intended method is not defined in the object that received the message, and inherited from the super object. It may be started by using. In this case, the target method is searched while following the pointer to the direct super object, and the found method is activated. A method search for a higher hierarchy of inheritance is called a method search.

【0011】以上で説明したように、オブジェクト指向
の考え方に基くシステムでは親となるオブジェクト(ス
ーパーオブジェクト)からメソッドを継承する。静的な
オブジェクト指向システム(例えばC++コンパイラ)で
は、コンパイル時にスーパーオブジェクトが持つメソッ
ドのアドレスを計算することが可能であるが、動的なオ
ブジェクト指向システム(例えばSmalltalk)
では、あらかじめメソッドのアドレスを計算することが
不可能であるため、実行時に使用するメソッドを検索し
て決定する。このメソッドサーチの原理を図9に示す。
As described above, in the system based on the object-oriented concept, the method is inherited from the parent object (super object). In a static object-oriented system (for example, C ++ compiler), it is possible to calculate the address of a method that a super object has at the time of compilation, but in a dynamic object-oriented system (for example, Smalltalk).
Since it is impossible to calculate the method address in advance, the method to be used at the time of execution is searched and determined. The principle of this method search is shown in FIG.

【0012】図9において、101,102,103は
継承関係を持つオブジェクトであり、SuperObj
ectというスロットによって親となるスーパーオブジ
ェクトを指し示している。すなわちオブジェクト(Ob
j_A)101はオブジェクト102(Obj_B)及
びオブジェクト103(Obj_C)のスーパーオブジ
ェクトであり、オブジェクト102はオブジェクト10
3のスーパーオブジェクトである。オブジェクト101
にはMethodsというスロットによってメソッド
(Meth_A)104が定義されており、オブジェク
ト102およびオブジェクト103はメソッド(Met
h_A)104を継承して利用することが可能である。
In FIG. 9, 101, 102 and 103 are objects having an inheritance relationship, and SuperObj
The slot ect points to the parent super object. That is, the object (Ob
j_A) 101 is a super object of the object 102 (Obj_B) and the object 103 (Obj_C), and the object 102 is the object 10
3 is a super object. Object 101
, A method (Meth_A) 104 is defined by a slot called Methods, and the objects 102 and 103 have a method (Met_A).
h_A) 104 can be inherited and used.

【0013】ここで、105に示すように、メソッドM
eth_Aを起動するメッセージmessage(Me
th_A)がオブジェクト103に送られた場合、ま
ず、オブジェクト103は106に示すように自分のM
ethodsスロットを検索するが、オブジェクト10
3にはMeth_Aが定義されていないので、Supe
rObjectスロットを利用して107のようにスー
パーオブジェクト102のMethodsスロットを検
索する。しかし、スーパーオブジェクト102にもメソ
ッドMeth_Aは定義されていないので、108に示
すようにさらにスーパーオブジェクト101のMeth
odsスロットを検索する。スーパーオブジェクト10
1にはメソッドMeth_Aが定義されているので、検
索がマッチし(match)、該当メソッド104を起
動することができる。
Here, as shown at 105, the method M
A message message (Me
th_A) is sent to the object 103, the object 103 first sends its own M as shown at 106.
Searches for methods slots, but object 10
Since Meth_A is not defined in 3,
Using the rObject slot, the method slots 107 of the super object 102 are searched for. However, since the method Meth_A is not defined in the super object 102, the method Meth_A of the super object 101 is further defined as shown in 108.
Search for the odds slot. Super object 10
Since the method Meth_A is defined in 1, the search matches (match) and the corresponding method 104 can be activated.

【0014】[0014]

【発明が解決しようとする課題】しかしながら、上記し
たような従来の動的オブジェクト指向システムにおける
継承によるメソッド実行は、継承階層が深くなればなる
ほどメソッドサーチの計算負荷が増大する。特に、各オ
ブジェクトをデータとして外部記憶装置に格納するオブ
ジェクト指向データベースシステムのようなシステムで
は、メソッドサーチ時に外部記憶装置上のスーパーオブ
ジェクトを検索するため外部記憶装置とのI/Oが発生
することから、継承階層を遡ってのメソッドサーチはシ
ステムに大きな負荷をかける。また、特にマルチユーザ
ーシステムの場合には、メソッドサーチパス上のオブジ
ェクト、例えば図9において、オブジェクト102を他
の人が利用している場合にはオブジェクト102にロッ
クがかけられ、オブジェクト102が解放されるまでオ
ブジェクト103からのメソッドサーチの要求は待たれ
ることとなり、著しく実行効率が低下する、あるいはタ
イムアウトで実行不可能になる可能性があった。
However, in the method execution by inheritance in the conventional dynamic object-oriented system as described above, the deeper the inheritance hierarchy, the more the method search calculation load increases. In particular, in a system such as an object-oriented database system in which each object is stored as data in an external storage device, I / O with the external storage device occurs because a super object on the external storage device is searched during method search. , Method search backwards in the inheritance hierarchy puts a heavy load on the system. Further, particularly in the case of a multi-user system, an object on the method search path, for example, in FIG. 9, when the object 102 is used by another person, the object 102 is locked and the object 102 is released. The request for the method search from the object 103 is kept waiting until the start, and the execution efficiency may be significantly reduced, or the execution may be impossible due to a timeout.

【0015】本発明の目的は、上記の問題点を解決する
ために、メソッドサーチにかかる計算負荷が少ない、高
速なメソッドサーチ方法を提供することにある。
An object of the present invention is to provide a high-speed method search method that solves the above problems by reducing the calculation load on the method search.

【0016】[0016]

【課題を解決するための手段】上記の目的を達成するた
め、本発明の請求項1の発明では、動的オブジェクト指
向システムにおける動的なメソッド実行において、各オ
ブジェクト内に過去に起動したメソッドの名前とリンク
を関連づけて格納するキャッシュ領域を持ち、オブジェ
クトに対してメッセージが送られた場合に、オブジェク
トに定義されている、前記メッセージに対応するメソッ
ドを検索する第一段階と、第一段階において前記メッセ
ージに対応するメソッドが定義されていた場合に該メソ
ッドを起動して第六段階に進む第二段階と、第一段階に
おいて前記メッセージに対応するメソッドが定義されて
いない場合に、前記オブジェクト内のキャッシュ領域に
キャッシュされている前記メッセージに対応するメソッ
ドへのリンクを検索する第三段階と、第三段階において
前記キャッシュ領域に前記メッセージに対応するメソッ
ドへのリンクがキャッシュされている場合に、該リンク
で指し示されるメソッドを起動して第六段階へ進む第四
段階と、第三段階において前記キャッシュ領域に前記メ
ッセージに対応するメソッドへのリンクがキャッシュさ
れていない場合に、前記オブジェクトのスーパーオブジ
ェクトについて第一段階から第五段階を繰返し適用する
第五段階と、前記メッセージが送られたオブジェクトの
スーパーオブジェクトのメソッドを継承して利用した場
合に限り、起動したメソッドの名前とリンクとを関連づ
けて、最初にメッセージが送られたオブジェクトのキャ
ッシュ領域にキャッシュする第六段階とを、持つことを
特徴とするメソッドサーチ方法を手段とする。
In order to achieve the above object, according to the invention of claim 1 of the present invention, in dynamic method execution in a dynamic object-oriented system, a method activated in the past in each object It has a cache area that stores names and links in association with each other, and when a message is sent to an object, the first step of searching the method corresponding to the message defined in the object, and the first step If a method corresponding to the message is defined and the method is activated and the process proceeds to the sixth step, and if the method corresponding to the message is not defined in the first step, in the object The link to the method corresponding to the message cached in the cache area of The third step, and in the third step, when the link to the method corresponding to the message is cached in the cache area, activates the method pointed to by the link and proceeds to the sixth step. And a fifth step of repeatedly applying the first to fifth steps for the super object of the object when the link to the method corresponding to the message is not cached in the cache area in the third step, The sixth step of associating the name of the invoked method with the link and caching in the cache area of the object to which the message was first sent, only when the method of the super object of the object to which the message was sent is inherited and used A method search method characterized by having and To.

【0017】また、同じく本発明の請求項2の発明で
は、上記の方法に加え、動的オブジェクト指向システム
における動的なメソッドの追加において、メソッド追加
対象のオブジェクトにメソッドを追加する第一段階と、
オブジェクト内のキャッシュ領域にキャッシュされてい
る、前記追加対象のメソッドと同名のメソッドへのリン
クを検索する第二段階と、第二段階において前記追加対
象のメソッドと同名のメソッドへのリンクが、オブジェ
クト内のキャッシュ領域にキャッシュされていた場合
に、該当リンクと名前の項目を該キャッシュ領域から削
除する第三段階と、を備え、第一段階実行後、前記メソ
ッド追加対象のオブジェクトおよびそのサブオブジェク
ト全てに関して第二段階と第三段階を繰返し適用する段
階を有することを特徴とするメソッドサーチ方法を手段
とする。
Also, in the invention of claim 2 of the present invention, in addition to the above method, in the addition of the dynamic method in the dynamic object-oriented system, the first step of adding the method to the object of the method addition target. ,
The second step of searching for a link to the method having the same name as the method to be added, which is cached in the cache area in the object, and the link to the method having the same name as the method to be added in the second step is the object. And a third step of deleting the item with the corresponding link and name from the cache area when the object is cached in the cache area in the The method search method is characterized in that the method has a step of repeatedly applying the second step and the third step with respect to.

【0018】さらに、同じく本発明の請求項3の発明で
は、以上の方法に加え、動的オブジェクト指向システム
における動的なメソッドの削除において、メソッド削除
対象のオブジェクトに定義されているメソッドを削除す
る第一段階と、オブジェクト内のキャッシュ領域にキャ
ッシュされている、前記削除対象のメソッドと同名のメ
ソッドへのリンクを検索する第二段階と、第二段階にお
いて前記削除対象のメソッドへのリンクがオブジェクト
内のキャッシュ領域にキャッシュされていた場合に、該
当リンクと名前の項目を該キャッシュ領域から削除する
第三段階と、を備え、第一段階実行後、前記メソッド削
除対象のオブジェクトおよびそのサブオブジェクト全て
に関して第二段階と第三段階を繰返し適用する段階を有
することを特徴とするメソッドサーチ方法を手段とす
る。
Further, in the invention of claim 3 of the present invention, in addition to the above method, in the dynamic method deletion in the dynamic object-oriented system, the method defined in the object whose method is to be deleted is deleted. The first step, the second step of searching for a link to the method with the same name as the method to be deleted, which is cached in the cache area in the object, and the link to the method to be deleted is the object in the second step. And a third step of deleting the item with the corresponding link and name from the cache area when the object has been cached in the cache area, and after executing the first step, the method deletion target object and all its sub-objects With a step of repeatedly applying a second step and a third step with respect to And means that method search method.

【0019】[0019]

【作用】本発明は、各オブジェクト内にキャッシュ領域
を設け、初回に起動したメソッドの名前と該当メソッド
へのリンクをキャッシュ領域に記憶しておいて、次回の
メソッド起動時にはキャッシュ領域を検索してキャッシ
ュしたリンクを取得し、取得したリンクに指し示される
メソッドを起動することにより、すなわち、過去に行っ
たメソッドサーチ時の情報を各オブジェクト内に保持し
ておくことにより、メソッドサーチにかかる計算負荷を
少なくし、メソッドサーチを高速化する。本発明では、
スーパーオブジェクトのリンクを辿りながらのメソッド
サーチが初回のみしか行われない点が、毎回行われてい
た従来の技術と大きく異なる。
According to the present invention, a cache area is provided in each object, the name of the method started first and the link to the method are stored in the cache area, and the cache area is searched when the method is started next time. By obtaining the cached link and activating the method pointed to by the obtained link, that is, by retaining the information of the method search performed in the past in each object, the calculation load on the method search To speed up method search. In the present invention,
The point that the method search while following the link of the super object is performed only for the first time is significantly different from the conventional technique that is performed every time.

【0020】[0020]

【実施例】以下、本発明の実施例を、図面を用いて詳細
に説明する。
Embodiments of the present invention will be described below in detail with reference to the drawings.

【0021】《実施例1》まず、本発明の第1の実施例
を示す。本実施例では、本発明の請求項1に記載する方
法によるメソッドサーチを模式的に説明する。本実施例
では、メソッドキャッシュをテーブルで管理する方法に
ついて説明する。
<< Embodiment 1 >> First, a first embodiment of the present invention will be described. In this example, a method search according to the method described in claim 1 of the present invention will be schematically described. In this embodiment, a method of managing a method cache in a table will be described.

【0022】図1は、本実施例の方法による初回のメソ
ッドサーチを説明する図である。図1において、20
1,202,203は継承関係を持つオブジェクトであ
り、SuperObjectというスロットによって親
となるスーパーオブジェクトを、SubObjectと
いうスロットにより子となるサブオブジェクトを指し示
している。すなわち、オブジェクト(Obj_A)20
1はオブジェクト(Obj_B)202及びオブジェク
ト(Obj_C)203のスーパーオブジェクトであ
り、オブジェクト202はオブジェクト203のスーパ
ーオブジェクトである。オブジェクト201のSupe
rObjectスロットおよびオブジェクト203のS
ubObjectスロットは空リンクであり、それぞれ
スーパーオブジェクト、サブオブジェクトが存在しない
ことを示している。オブジェクト201〜203は、そ
れぞれ過去に起動したメソッドを記憶管理するため、n
ameフィールドとmethodフィールドを有するメ
ソッドキャッシュテーブル(Methods Cash
e)204〜205を持つ。201〜203の各オブジ
ェクトは、Methodsスロットにより各オブジェク
トに定義されたメソッドを管理しているものとする。す
なわち、オブジェクト201は、メソッド(Meth_
A)207を持ち、オブジェクト202およびオブジェ
クト203は、メソッド207を継承して利用すること
が可能である。
FIG. 1 is a diagram for explaining the initial method search according to the method of this embodiment. In FIG.
Objects 1, 202, and 203 have inheritance relations, and a slot called SuperObject points to a parent super-object, and a slot called SubObject points to a sub-object that becomes a child. That is, the object (Obj_A) 20
1 is a super object of the object (Obj_B) 202 and the object (Obj_C) 203, and the object 202 is a super object of the object 203. Supe of object 201
rObject slot and S of object 203
The ubObject slot is an empty link, indicating that there is no super object or sub object, respectively. Since the objects 201 to 203 each store and manage the method activated in the past, n
A method cache table (Methods Cash) having an ame field and a method field
e) Have 204-205. It is assumed that each of the objects 201 to 203 manages the method defined for each object by the Methods slot. That is, the object 201 has a method (Meth_
A) 207 is provided, and the object 202 and the object 203 can inherit and use the method 207.

【0023】例として、オブジェクト203にMeth
_Aを起動するメッセージMessage(Meth_
A)が送られた場合を、図1を用いて説明する。208
に示すようにオブジェクト203にメッセージMess
age(Meth_A)が送られた場合、209に示す
ようにオブジェクト203は自分のMethodsスロ
ットを検索する。本実施例ではオブジェクト203には
Meth_Aというメソッドが定義されていないので、
次に210に示すようにメソッドキャッシュテーブル2
06内を検索する。メソッドキャッシュテーブル206
にメソッドMeth_Aへのリンクはキャッシュされて
いないので、次に211に示すようにスーパーオブジェ
クト202のMethodsスロットを検索する。スー
パーオブジェクト202にもMeth_Aというメソッ
ドは定義されていないので、次に212に示すようにス
ーパーオブジェクト202のメソッドキャッシュテーブ
ル205内を検索する。メソッドキャッシュテーブル2
05にもメソッドMeth_Aへのリンクはキャッシュ
されていないので、次に213に示すようにスーパーオ
ブジェクト201のMethodsスロットを検索す
る。スーパーオブジェクト201には207に示すメソ
ッドMeth_Aが定義されているので、検索がマッチ
し(match)、該当メソッド207を起動する。こ
のときに、後述する図2に示すように、メソッドキャッ
シュテーブル206のnameフィールドには起動した
メソッド名“Meth_A”をキャッシュし、Meth
odフィールドには起動したメソッド207へのリンク
をキャッシュして214に示すようなリンクを確立す
る。
As an example, the object 203 has a Meth
_A message that activates Message (Meth_
The case where A) is sent will be described with reference to FIG. 208
As shown in, the message Mess is sent to the object 203.
When “age (Meth_A)” is sent, the object 203 searches for its Methods slot, as indicated by 209. In this embodiment, the method called Meth_A is not defined in the object 203, so
Next, as shown in 210, the method cache table 2
Search in 06. Method cache table 206
Since the link to the method Meth_A is not cached, the method retrieves the Methods slot of the super object 202 as indicated by 211. Since the method called Meth_A is not defined in the super object 202, the method cache table 205 of the super object 202 is searched as shown in 212. Method cache table 2
Since the link to the method Meth_A is not cached in 05 as well, the Methods slot of the super object 201 is searched next as shown in 213. Since the method Meth_A 207 is defined in the super object 201, the search matches (match), and the corresponding method 207 is activated. At this time, as shown in FIG. 2 described later, the activated method name “Meth_A” is cached in the name field of the method cache table 206, and
The link to the activated method 207 is cached in the od field to establish the link as shown at 214.

【0024】図2は、本実施例の方法による2回目以降
のメソッドサーチを模式的に説明する図である。図1に
示した208以降に、オブジェクト203に同じメッセ
ージMessage(Meth_A)が送られた場合
(215)、まず、初回と同じように216に示す通
り、オブジェクト203は自分のMethodsスロッ
トを検索する。本実施例では、オブジェクト203には
Meth_Aというメソッドが定義されていないので、
次に217に示すようにメソッドキャッシュテーブル2
06内を検索する。今回は上記したようにメソッドキャ
ッシュテーブル206にはメソッドMeth_Aへのリ
ンク214がキャッシュされていることから、初回のよ
うにスーパーオブジェクトを辿ることなく、検索がマッ
チし(match)、218に示すようにリンク214
で指し示される207のメソッドMeth_Aをすぐに
起動することができる。
FIG. 2 is a diagram for schematically explaining the method search from the second time onward by the method of this embodiment. When the same message Message (Meth_A) is sent to the object 203 after 208 shown in FIG. 1 (215), first, the object 203 searches its own Methods slot as shown in 216 as in the first time. In this embodiment, since the method called Meth_A is not defined in the object 203,
Next, as shown in 217, the method cache table 2
Search in 06. Since the link 214 to the method Meth_A is cached in the method cache table 206 as described above this time, the search matches (match) without tracing the super object as in the first time, and as shown in 218. Link 214
The 207 method Meth_A pointed to by can be immediately invoked.

【0025】《実施例2》次に、本発明の第2の実施例
を示す。本実施例では、本発明の請求項2に記載の方法
によるメソッド追加時の処理と、請求項1に記載の方法
によるその後のメソッドサーチについて図を用いて模式
的に説明する。
<Embodiment 2> Next, a second embodiment of the present invention will be described. In this embodiment, a process at the time of adding a method by the method according to claim 2 of the present invention and a subsequent method search by the method according to claim 1 will be schematically described with reference to the drawings.

【0026】図3は、メソッドの追加と、メソッド追加
後の初回のメソッドサーチを説明する図である。図3に
示すように、オブジェクト202にメソッド207と同
名の新たなメソッド(Meth_A)220が追加され
たとすると、オブジェクト203にMessage(M
eth_A)というメッセージが送られた場合には、メ
ソッド207ではなくメソッド220を起動する必要が
ある。これをメソッドのオーバーライトという。まず、
メソッド220がオブジェクト202に定義され、Me
thodsスロットに追加されたときに、clear2
19によりメソッドが追加されたオブジェクト202お
よび全てのサブオブジェクト(本例ではオブジェクト2
03)のキャッシュテーブルを検索し、キャッシュされ
ているメソッドMeth_Aへのリンクと名前の項目を
削除する(本例ではメソッドキャッシュテーブル206
の項目を削除する)。
FIG. 3 is a diagram for explaining the method addition and the first method search after the method addition. As shown in FIG. 3, if a new method (Meth_A) 220 having the same name as the method 207 is added to the object 202, the message (Message (M
When the message eth_A) is sent, it is necessary to activate the method 220 instead of the method 207. This is called method overwriting. First,
Method 220 is defined on object 202 and Me
clear2 when added to the hods slot
The object 202 to which the method is added by 19 and all sub-objects (object 2 in this example)
03) cache table is searched, and the item of the link and the name of the method Meth_A that is cached is deleted (in this example, the method cache table 206
Delete the item).

【0027】メソッド220追加後に、221に示すよ
うにオブジェクト203にメソッドMeth_Aを起動
するメッセージMessage(Meth_A)が送ら
れた場合には、まず222に示すようにオブジェクト2
03のMethodsスロットを検索する。オブジェク
ト203にはMeth_Aというメソッドは定義されて
いないので、次に223に示すようにメソッドキャッシ
ュテーブル206内を検索する。メソッドキャッシュテ
ーブル206にMeth_Aへのリンクはキャッシュさ
れていないので(clear219において削除されて
いる)、次に224に示すようにスーパーオブジェクト
202のMethodsスロットを検索する。今回は新
たに220のメソッドMeth_Aが定義されているの
で、該当メソッド220を起動する。このときに、次に
説明する図4に示すように、メソッドキャッシュテーブ
ル206のnameフィールドには、起動したメソッド
名“Meth_A”をキャッシュし、Methodフィ
ールドに今回起動したメソッド220へのリンクをキャ
ッシュして、225に示すようなリンクを確立する。
After the method 220 is added, if a message Message (Meth_A) for invoking the method Meth_A is sent to the object 203 as shown by 221, first, as shown at 222, the object 2
Search the 03 Methods slot. Since the method called Meth_A is not defined in the object 203, the method cache table 206 is searched next as indicated by 223. Since the link to Meth_A is not cached in the method cache table 206 (deleted in the clear 219), the Methods slot of the super object 202 is searched as shown at 224. Since the method 220, Meth_A, is newly defined this time, the method 220 is activated. At this time, as shown in FIG. 4 described next, the activated method name “Meth_A” is cached in the name field of the method cache table 206, and the link to the method 220 activated this time is cached in the Method field. Then, a link as shown by 225 is established.

【0028】図4は、本発明によるメソッド追加後の2
回目以降のメソッドサーチを模式的に説明する図であ
る。図3に示した221以降にオブジェクト203にメ
ソッドMeth_Aを起動するメッセージMessag
e(Meth_A)が送られた場合(226)、まず、
初回と同じように227に示すようにオブジェクト20
3は自分のMethodsスロットを検索する。本実施
例ではオブジェクト203にはMeth_Aというメソ
ッドが定義されていないので、次に、228に示すよう
にメソッドキャッシュテーブル206内を検索する。今
回は図4に示すようにメソッドキャッシュテーブル20
6にメソッドMeth_Aへのリンク225がキャッシ
ュされていることから、229に示すように検索がマッ
チして(match)、初回のようにスーパーオブジェ
クトを辿ることなく、リンク225で指し示される22
0のメソッドMeth_Aをすぐに起動することができ
る。
FIG. 4 shows the process after the method is added according to the present invention.
It is a figure which illustrates typically the method search after the 1st time. A message Mssag for invoking the method Meth_A on the object 203 after 221 shown in FIG.
When e (Meth_A) is sent (226), first,
As with the first time, the object 20 as shown at 227
3 searches his Methods slot. In this embodiment, since the method called Meth_A is not defined in the object 203, the method cache table 206 is searched as shown at 228. This time, as shown in FIG. 4, the method cache table 20
Since the link 225 to the method Meth_A is cached in 6, the search matches (match) as indicated by 229 and is pointed to by the link 225 without following the super object as in the first time 22
Method 0 Meth_A of 0 can be activated immediately.

【0029】《実施例3》次に、本発明の第3の実施例
を示す。本実施例では、本発明の請求項3に記載の方法
によるメソッド削除時の処理について図を用いて模式的
に説明する。
<< Embodiment 3 >> Next, a third embodiment of the present invention will be described. In the present embodiment, a method for deleting a method by the method according to claim 3 of the present invention will be schematically described with reference to the drawings.

【0030】図5は、本実施例によるメソッドの削除を
説明する図である。図5の230に示すように、図4の
オブジェクト202に定義されていたメソッド220を
削除する場合、オブジェクト202のMethodsス
ロットに定義されているメソッド220を削除すると共
に、clear231に示すようにメソッドを削除する
オブジェクト202および全てのサブオブジェクトのキ
ャッシュテーブルを220へのリンクをキーにして検索
し、該当する項目をキャッシュテーブル(本例の場合は
メソッドキャッシュテーブル205および206)から
削除する。
FIG. 5 is a diagram for explaining method deletion according to this embodiment. As shown by 230 in FIG. 5, when deleting the method 220 defined in the object 202 of FIG. 4, while deleting the method 220 defined in the Methods slot of the object 202, the method is deleted as shown in clear 231. The cache table of the object 202 to be deleted and all the sub-objects is searched by using the link to 220 as a key, and the corresponding item is deleted from the cache table (method cache tables 205 and 206 in this example).

【0031】《実施例4》第4の実施例では、図6のフ
ローチャートを用いて、本発明の請求項1に記載の方法
によるメソッドサーチとキャッシュの方法を説明する。
<Embodiment 4> In the fourth embodiment, a method search and cache method according to the method described in claim 1 of the present invention will be described with reference to the flowchart of FIG.

【0032】オブジェクトOにMessage(Met
h_A)というメッセージが送られた場合にはメソッド
Meth_Aが起動されなければならない。オブジェク
トOにメッセージMessage(Meth_A)が送
られると701からの処理が行われる。
Message (Met
If the message h_A) is sent then the method Meth_A must be invoked. When the message Message (Meth_A) is sent to the object O, the processing from 701 is performed.

【0033】まず、メッセージMessage(Met
h_A)が送られたオブジェクトOを作業用領域O1に
コピーする(702)。次に作業用領域O1のMeth
odsスロットを検索し(703)、作業用領域O1に
メソッドMeth_Aが定義されているかどうかを判断
する(704)。作業用領域O1のMethodsスロ
ットにメソッドMeth_Aが定義されていれば、該当
メソッドMeth_Aを起動(709)して712へ進
み、定義されていない場合には705へ進む。705で
は作業用領域O1のメソッドキャッシュテーブルMet
hodsCasheを検索し、作業用領域O1にメソッ
ドMeth_Aへのリンクがキャッシュされているかど
うかを判断する(706)。キャッシュされていればリ
ンクで指し示されるメソッドMeth_Aを起動(71
0)して712へ進み、キャッシュされていない場合に
は707へ進む。707では作業用領域O1にスーパー
オブジェクトが存在するかどうかを判断し、無ければメ
ソッドMeth_Aが見つからなかったのでメソッド未
定義エラーの処理をして(711)終了し(714)、
スーパーオブジェクトがあれば708へ進む。708で
は作業用領域O1のスーパーオブジェクトを作業用領域
O1として再定義し、703へ戻る。709あるいは7
10でメソッドが起動された場合は712へ進む。
First, the message Message (Met
The object O to which h_A) is sent is copied to the work area O1 (702). Next, the Meth of the work area O1
The odds slot is searched (703), and it is determined whether the method Meth_A is defined in the work area O1 (704). If the method Meth_A is defined in the Methods slot of the work area O1, the method Meth_A is activated (709) and the process proceeds to 712. If not defined, the process proceeds to 705. In 705, the method cache table Met of the work area O1
HodsCache is searched to determine whether the link to the method Meth_A is cached in the work area O1 (706). If it is cached, invoke the method Meth_A pointed to by the link (71
0) and proceed to 712. If not cached, proceed to 707. In 707, it is judged whether or not a super object exists in the work area O1, and if there is not, the method Meth_A cannot be found. Therefore, the method undefined error is processed (711) and the processing is terminated (714).
If there is a super object, proceed to 708. In 708, the super object of the work area O1 is redefined as the work area O1, and the process returns to 703. 709 or 7
When the method is activated in 10, the process proceeds to 712.

【0034】712ではオブジェクトOと作業用領域O
1が同じオブジェクトかどうかを判断し(712)、オ
ブジェクトOと作業用領域O1が同じオブジェクトであ
ればメッセージMessage(Meth_A)が送ら
れたオブジェクトOにメソッドMeth_Aが定義され
ている、あるいは、メソッドMeth_Aへのリンクが
すでにキャッシュされていることを示していることか
ら、そのまま終了し(714)、オブジェクトOと作業
用領域O1が同じオブジェクトでなければ713に進
み、オブジェクトOのメソッドキャッシュテーブルMe
thodsCasheに、起動したメソッドMeth_
Aへのリンクとメソッド名を格納して(キャッシュし
て)終了する(714)。
At 712, the object O and the work area O
If the object O and the work area O1 are the same object, the method Meth_A is defined in the object O to which the message Message (Meth_A) is sent, or the method Meth_A is determined. Since it indicates that the link to is already cached, the processing is terminated as it is (714), and if the object O and the work area O1 are not the same object, the process proceeds to 713, and the method cache table Me of the object O.
The method Meth_ that has been started in methodsCache
The link to A and the method name are stored (cached) and the processing is terminated (714).

【0035】《実施例5》第5の実施例では、図7のフ
ローチャートを用いて、本発明の請求項2に記載の方法
によるメソッド追加の処理を説明する。
<Fifth Embodiment> In the fifth embodiment, a method addition process according to the method of claim 2 of the present invention will be described with reference to the flowchart of FIG.

【0036】オブジェクトOにメソッドMeth_Aを
追加する場合に801以降の処理が行われる。まず、オ
ブジェクトOのMethodsスロットにメソッドMe
th_Aを追加する(802)。次に、メソッドが追加
されたオブジェクトOを作業用領域O1にコピーする
(803)。次に作業用領域O1のメソッドキャッシュ
テーブルMethods Casheには他のメソッド
Meth_Aへのリンクがキャッシュされている可能性
があるので、あればこのリンクと名前の項目を削除する
(804)。次に、作業用領域O1にサブオブジェクト
があるかどうかを判断する(805)。もし、サブオブ
ジェクトがなければ終了(807)し、サブオブジェク
トがあれば、これを作業用領域O1として再定義し(8
06)、804へ戻る。
When the method Meth_A is added to the object O, the processing after 801 is performed. First, the method Me is added to the Methods slot of object O.
th_A is added (802). Next, the object O to which the method is added is copied to the work area O1 (803). Next, there is a possibility that a link to another method Meth_A is cached in the method cache table Methods Cache of the work area O1, so if there is such a link, the item of this link and name is deleted (804). Next, it is determined whether or not there is a sub-object in the work area O1 (805). If there is no sub-object, the process ends (807). If there is a sub-object, this is redefined as the work area O1 (8).
06), and return to 804.

【0037】《実施例6》第6の実施例では、図8のフ
ローチャートを用いて、本発明の請求項3に記載の方法
によるメソッド削除の処理を説明する。
<Embodiment 6> In the sixth embodiment, the method deletion processing by the method according to claim 3 of the present invention will be described with reference to the flowchart of FIG.

【0038】オブジェクトOからメソッドMeth_A
を削除する場合に901以降の処理が行われる。まず、
オブジェクトOのMethodsスロットからメソッド
Meth_Aを削除する(902)。次に、メソッドが
削除されたオブジェクトOを作業用領域O1にコピーす
る(903)。次に、作業用領域O1のメソッドキャッ
シュテーブルMethods Casheには他のメソ
ッドMeth_Aへのリンクがキャッシュされている可
能性があるので、あればこのリンクと名前の項目を削除
する(904)。次に、作業用領域O1にサブオブジェ
クトがあるかどうかを判断する(905)。もし、サブ
オブジェクトがなければ終了(907)し、サブオブジ
ェクトがあればこれを作業用領域O1として再定義し
(906)、904へ戻る。
From object O to method Meth_A
In the case of deleting, the processing after 901 is performed. First,
The method Meth_A is deleted from the Methods slot of the object O (902). Next, the object O whose method has been deleted is copied to the work area O1 (903). Next, since there is a possibility that a link to another method Meth_A is cached in the method cache table Methods Cache of the work area O1, the item of this link and name is deleted (904). Next, it is judged whether or not there is a sub-object in the work area O1 (905). If there is no sub-object, the process ends (907). If there is a sub-object, this is redefined as the work area O1 (906), and the process returns to 904.

【0039】[0039]

【発明の効果】以上の説明により明らかなように、本発
明の請求項1のメソッドサーチ方法は、動的なオブジェ
クト指向システムにおいて、各々のオブジェクト内に過
去に起動したメソッドへのリンクをキャッシュし、以降
のメソッド起動時にはキャッシュされたメソッドへのリ
ンクを利用してメソッドを起動することから、継承階層
を遡ってメソッド検索を行う必要が無く、計算負荷が少
なく高速なメソッド起動が可能となる効果がある。特に
オブジェクトを外部記憶装置に格納するオブジェクト指
向データベースにおいては、メソッド検索に伴うI/O
が大幅に減少することから著しい速度改善が見込まれる
と共に、オブジェクト内部にキャッシュを持つことか
ら、該当オブジェクトが永続化した場合にはキャッシュ
も共に永続化され、メソッドの追加などの構造の変更が
ない限り永続的にキャッシュの効果が持続する。また正
規のメソッドサーチパスをバイパスしてメソッドを起動
することから、特にマルチユーザーで利用するオブジェ
クト指向データベースにおいては、メソッドサーチパス
上のオブジェクトを他のユーザーがロック中であっても
オブジェクトアクセスの競合が発生せず、即座にメソッ
ドを起動できるという効果がある。
As is apparent from the above description, the method search method according to claim 1 of the present invention caches a link to a method activated in the past in each object in a dynamic object-oriented system. , Since the method is started by using the link to the cached method at the subsequent method startup, there is no need to search the inheritance hierarchy for method search, and the calculation load is small and high-speed method startup is possible. There is. Especially in an object-oriented database that stores objects in an external storage device, I / O associated with method retrieval
It is expected that the speed will be significantly reduced due to a large decrease in the number of caches. Also, since the object has a cache, the cache will be persisted when the relevant object is persisted, and there will be no structural changes such as addition of methods. The effect of the cache lasts as long as possible. Also, since the method is invoked by bypassing the regular method search path, especially in an object-oriented database that is used by multiple users, object access conflict occurs even if another user is locking an object on the method search path. There is an effect that the method can be started immediately without the occurrence of.

【0040】また、本発明の請求項2および請求項3の
メソッドサーチ方法は、動的オブジェクト指向システム
において動的なメソッドの追加、削除がなされた場合
に、追加、削除されるメソッドと同名のメソッドとリン
クを、追加、削除対象のオブジェクトと全てのサブオブ
ジェクトのキャッシュ領域から削除するようにしたの
で、動的なメソッドの追加、削除に適応して上記の請求
項1のメソッドサーチ方法を適用することができるとい
う効果がある。
The method search method according to claims 2 and 3 of the present invention has the same name as the method to be added or deleted when a dynamic method is added or deleted in the dynamic object-oriented system. Since the method and the link are deleted from the cache area of the object to be added or deleted and all the sub-objects, the method search method according to claim 1 is applied in conformity with the dynamic addition and deletion of the method. There is an effect that can be done.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の第1の実施例として、本発明の請求項
1に記載のメソッドサーチ方法に関し、特に初回のメソ
ッドサーチについて模式的に説明する図である。
FIG. 1 is a diagram schematically illustrating a method search method according to a first embodiment of the present invention as a first embodiment of the present invention, and particularly a first method search.

【図2】上記第1の実施例のメソッドサーチ方法に関
し、特に2回目以降のメソッドサーチについて模式的に
説明する図である。
FIG. 2 is a diagram schematically illustrating the method search method of the first embodiment, particularly the method search from the second time onward.

【図3】本発明の第2の実施例として、本発明の請求項
2に記載のメソッドサーチ方法に関し、動的なメソッド
追加時の処理と、メソッド追加処理後の初回ののメソッ
ドサーチについて模式的に説明する図である。
FIG. 3 relates to a method search method according to claim 2 of the present invention as a second embodiment of the present invention, and schematically shows a process at the time of dynamic method addition and a first method search after the method addition process. FIG.

【図4】上記第2の実施例のメソッドサーチ方法に関
し、特にメソッド追加処理後の2回目以降のメソッドサ
ーチについて模式的に説明する図である。
FIG. 4 is a diagram schematically illustrating the method search method of the second embodiment, particularly the second and subsequent method searches after the method addition processing.

【図5】本発明の第3の実施例として、本発明の請求項
3に記載のメソッドサーチ方法に関し、動的なメソッド
削除時の処理について模式的に説明する図である。
FIG. 5 is a diagram schematically illustrating a process at the time of dynamic method deletion as to a method search method according to claim 3 of the present invention as a third embodiment of the present invention.

【図6】本発明の第4の実施例として、本発明の請求項
1に記載のメソッドサーチ方法について説明するフロー
チャートである。
FIG. 6 is a flowchart illustrating a method search method according to claim 1 of the present invention as a fourth embodiment of the present invention.

【図7】本発明の第5の実施例として、本発明の請求項
2に記載のメソッドサーチ方法に関し、メソッドの追加
方法について説明するフローチャートである。
FIG. 7 is a flow chart for explaining a method addition method as a method search method according to a second embodiment of the present invention as a fifth embodiment of the present invention.

【図8】本発明の第6の実施例として、本発明の請求項
3に記載のメソッドサーチ方法に関し、メソッドの削除
方法について説明するフローチャートである。
FIG. 8 is a flowchart illustrating a method search method according to claim 3 of the present invention as a sixth embodiment of the present invention, and illustrating a method deletion method.

【図9】従来の技術によるメソッドサーチ方法を模式的
に説明する図である。
FIG. 9 is a diagram schematically illustrating a method search method according to a conventional technique.

【符号の説明】[Explanation of symbols]

201〜203…継承関係を持つオブジェクト 204〜206…メソッドキャッシュテーブル 207…メソッド 208…初回に送られたメッセージ 214…リンク 215…2回目以降に送られたメッセージ 220…追加されたメソッド 221…メソッド追加後の初回に送られたメッセージ 225…リンク 226…メソッド追加後の2回目以降に送られたメッセ
ージ 230…削除されたメソッド
201-203 ... Objects with inheritance relationship 204-206 ... Method cache table 207 ... Method 208 ... Message sent first time 214 ... Link 215 ... Message sent after second time 220 ... Added method 221 ... Method addition Message sent to the first time after 225 ... Link 226 ... Message sent after the second time after adding the method 230 ... Method deleted

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 動的オブジェクト指向システムにおける
動的なメソッド実行において、各オブジェクト内に過去
に起動したメソッドの名前とリンクを関連づけて格納す
るキャッシュ領域を持ち、オブジェクトに対してメッセ
ージが送られた場合に、 オブジェクトに定義されている、前記メッセージに対応
するメソッドを検索する第一段階と、 第一段階において前記メッセージに対応するメソッドが
定義されていた場合に該メソッドを起動して第六段階に
進む第二段階と、 第一段階において前記メッセージに対応するメソッドが
定義されていない場合に、前記オブジェクト内のキャッ
シュ領域にキャッシュされている前記メッセージに対応
するメソッドへのリンクを検索する第三段階と、 第三段階において前記キャッシュ領域に前記メッセージ
に対応するメソッドへのリンクがキャッシュされている
場合に、該リンクで指し示されるメソッドを起動して第
六段階へ進む第四段階と、 第三段階において前記キャッシュ領域に前記メッセージ
に対応するメソッドへのリンクがキャッシュされていな
い場合に、前記オブジェクトのスーパーオブジェクトに
ついて第一段階から第五段階を繰返し適用する第五段階
と、 前記メッセージが送られたオブジェクトのスーパーオブ
ジェクトのメソッドを継承して利用した場合に限り、起
動したメソッドの名前とリンクとを関連づけて、最初に
メッセージが送られたオブジェクトのキャッシュ領域に
キャッシュする第六段階とを、 持つことを特徴とするメソッドサーチ方法。
1. In dynamic method execution in a dynamic object-oriented system, each object has a cache area in which a name of a method activated in the past and a link are stored in association with each other, and a message is sent to the object. In this case, the first step of searching the method corresponding to the message defined in the object, and the sixth step by activating the method corresponding to the message defined in the first step Go to step 2 and search the link to the method corresponding to the message cached in the cache area of the object if the method corresponding to the message is not defined in the first step 3 And in the third step, the message is stored in the cache area. When the link to the method corresponding to is cached, the method corresponding to the message is activated in the cache area in the third step by activating the method pointed to by the link and proceeding to the sixth step. A fifth step in which steps 1 to 5 are repeatedly applied to the super object of the object when the link to is not cached, and the method of the super object of the object to which the message is sent is inherited and used A method search method characterized by having a sixth step of associating the name of the invoked method with a link and caching in the cache area of the object to which the message was first sent, only if
【請求項2】 動的オブジェクト指向システムにおける
動的なメソッドの追加において、 メソッド追加対象のオブジェクトにメソッドを追加する
第一段階と、 オブジェクト内のキャッシュ領域にキャッシュされてい
る、前記追加対象のメソッドと同名のメソッドへのリン
クを検索する第二段階と、 第二段階において前記追加対象のメソッドと同名のメソ
ッドへのリンクが、オブジェクト内のキャッシュ領域に
キャッシュされていた場合に、該当リンクと名前の項目
を該キャッシュ領域から削除する第三段階と、を備え、 第一段階実行後、前記メソッド追加対象のオブジェクト
およびそのサブオブジェクト全てに関して第二段階と第
三段階を繰返し適用する段階を有することを特徴とする
請求項1に記載のメソッドサーチ方法。
2. A dynamic object addition in a dynamic object-oriented system, the first step of adding a method to an object of a method addition target, and the addition target method cached in a cache area in the object. If the link to the method with the same name as the method to be added is cached in the cache area in the object in the second step of searching for a link to the method with the same name as And a third step of deleting the item from the cache area, and after the first step is executed, the second step and the third step are repeatedly applied to the object to which the method is added and all of its sub-objects. The method search method according to claim 1, wherein:
【請求項3】 動的オブジェクト指向システムにおける
動的なメソッドの削除において、 メソッド削除対象のオブジェクトに定義されているメソ
ッドを削除する第一段階と、 オブジェクト内のキャッシュ領域にキャッシュされてい
る、前記削除対象のメソッドと同名のメソッドへのリン
クを検索する第二段階と、 第二段階において前記削除対象のメソッドへのリンクが
オブジェクト内のキャッシュ領域にキャッシュされてい
た場合に、該当リンクと名前の項目を該キャッシュ領域
から削除する第三段階と、を備え、 第一段階実行後、前記メソッド削除対象のオブジェクト
およびそのサブオブジェクト全てに関して第二段階と第
三段階を繰返し適用する段階を有することを特徴とする
請求項1または請求項2に記載のメソッドサーチ方法。
3. In dynamic method deletion in a dynamic object-oriented system, a first step of deleting a method defined in an object whose method is to be deleted, and cached in a cache area in the object, The second step of searching for a link to the method with the same name as the method to be deleted, and in the second step, if the link to the method to be deleted is cached in the cache area in the object, And a third step of deleting an item from the cache area, and after the first step is executed, the second step and the third step are repeatedly applied to the object for which the method is to be deleted and all of its sub-objects. The method search method according to claim 1, wherein the method search method is a method.
JP7154173A 1995-06-21 1995-06-21 Method search method Pending JPH096616A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7154173A JPH096616A (en) 1995-06-21 1995-06-21 Method search method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7154173A JPH096616A (en) 1995-06-21 1995-06-21 Method search method

Publications (1)

Publication Number Publication Date
JPH096616A true JPH096616A (en) 1997-01-10

Family

ID=15578436

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7154173A Pending JPH096616A (en) 1995-06-21 1995-06-21 Method search method

Country Status (1)

Country Link
JP (1) JPH096616A (en)

Similar Documents

Publication Publication Date Title
US6212608B1 (en) Method and apparatus for thread synchronization in an object-based system
KR100472807B1 (en) System and method for automatically modifying database access methods to insert database object handling instructions
US7043481B2 (en) System, method and software for creating, maintaining, navigating or manipulating complex data objects and their data relationships
US6944845B2 (en) Implementation for an object oriented run-time extensible item
US7831771B2 (en) System and method for managing cachable entities
US6480862B1 (en) Relation-based ordering of objects in an object heap
US5682536A (en) Method and system for referring to and binding to objects using identifier objects
JP3609426B2 (en) Thread-local synchronous construct cache
US6442584B1 (en) Methods for resource consolidation in a computing environment
US7937378B2 (en) Concurrent lock-free skiplist with wait-free contains operator
JPH11120066A (en) Method for deciding how alteration of basic data affect object and program stored device
JP2000222212A (en) Real class determination of object in execution
JPH0877023A (en) System for making single object pointer by uniting local object address with global object identifier
JPH1040107A (en) System and method for running time optimization of private varaible function call by security interpreter
Kafura et al. ACT++ 2.0: A class library for concurrent programming in C++ using Actors
US20030225781A1 (en) Entry points for navigation of hierarchical information structures
CN104423982A (en) Request processing method and device
US6938050B2 (en) Content management system and methodology employing a tree-based table hierarchy which accomodates opening a dynamically variable number of cursors therefor
US20060206524A1 (en) Intelligent collection management
US6324563B1 (en) Customer information control system application programming interface, with global and local system and file control functions, in a loosely coupled data processing environment
CA2600504C (en) Container-level transaction management system and method therefor
JPH096616A (en) Method search method
US6752836B1 (en) Method and apparatus for high-concurrency client locking with java in a data processing system
US7676477B1 (en) Utilities for deriving values and information from within an interlocking trees data store
JPH05265838A (en) Object-orientation data base system and version managing method