9.2.7. 例


以下のように単純な例で、アクティベート、終了、コミットの関係を説明します。

例9.4 アクティベーション、終了、コミットの関係

{
      . . .
      O1 objct1 = new objct1(Name-A);/* (i) bind to "old" persistent object A */
      O2 objct2 = new objct2();	 /* create a "new" persistent object */
      OTS.current().begin();		 /* (ii) start of atomic action */
      
      objct1.op(...);		      /* (iii) object activation and invocations */
      objct2.op(...);
      . . .
      OTS.current().commit(true); 	/* (iv) tx commits & objects deactivated */
      } 					/* (v) */
Copy to Clipboard Toggle word wrap
上記のコードを実行すると、以下の順序でアクティビティが行われます。
  1. バインドを作成しオブジェクトを永続化します。これには、スタブオブジェクトを作成し、リモートオブジェクトを呼び出す必要があるかもしれません。上記の例では、Name-Aにて特定された既存の永続オブジェクトおよび新規永続オブジェクトを再度バインドしています。リモートオブジェクトのネーミングシステムにより、オブジェクト名と場所のマッピングを管理しており、これについては後の章で説明しています。
  2. アトミックトランザクションの開始
  3. 操作の呼出し。特定の呼出しの一部として、このオブジェクト実装が読み取りまたは書き込みモードでロックされ、必要があれば、ロックの矛盾がない前提でオブジェクトストアからの最新のコミット状態で初期化されるようにします。トランザクションのオブジェクトでロックを初めて取得したときに、オブジェクトステートもオブジェクトストアから取得します。
  4. トップレベルアクションのコミット。これにはオブジェクトストアにある変更オブジェクトのステートを更新することも含まれます。
  5. 以前に作成したバインドを破棄
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat