「Vle-start-transaction」の版間の差分

提供:GizmoLabs - だいたい CAD LISP なサイト
(ページの作成:「{{AutoLISP}} ; 構文 : (vle-start-transaction) ; 機能 : 現在の図面に対してアクティブなデータベーストランザクションを開始終了させ…」)
 
編集の要約なし
5行目: 5行目:


; 機能
; 機能
: 現在の図面に対してアクティブなデータベーストランザクションを開始終了させる。
: 現在の図面に対してアクティブなデータベーストランザクションを開始させる。




16行目: 16行目:




MEMO:
====MEMO:====
Lisp の実行が終了すると、保留中のトランザクションは自動的に閉じられる (Lisp コードがエラーになった場合も同様)。
アクティブなトランザクションでは、データベースやディスプレイの更新はトランザクションが終了するまで遅延される - これは多くのエンティティやデータベースの変更が行われた場合に、パフォーマンスを大幅に改善する。
トランザクションがアクティブでないときに(vle-end-transaction)を呼んでも害はない; No-Operationである。
複数のトランザクションのネストはサポートされていないが、Lispは単一の(グローバルな)トランザクションのみを保持するため、潔く許容される。
Lispの実行が終了すると、保留中のトランザクションは自動的に閉じられる(Lispコードにエラーが発生した場合も同様)。
 





2022年6月13日 (月) 23:15時点における版

構文
(vle-start-transaction)


機能
現在の図面に対してアクティブなデータベーストランザクションを開始させる。


引数
  • なし


戻り値
トランザクションがアクティブな場合は T、そうでない場合は NIL


MEMO:

アクティブなトランザクションでは、データベースやディスプレイの更新はトランザクションが終了するまで遅延される - これは多くのエンティティやデータベースの変更が行われた場合に、パフォーマンスを大幅に改善する。 複数のトランザクションのネストはサポートされていないが、Lispは単一の(グローバルな)トランザクションのみを保持するため、潔く許容される。 Lispの実行が終了すると、保留中のトランザクションは自動的に閉じられる(Lispコードにエラーが発生した場合も同様)。


サンプル

<syntaxhighlight lang="lisp" line> (vle-start-transaction)

(vle-end-transaction)

</syntaxhighlight>



関連事項