4.14.1.1 Transactions
AllApplicationManualNameSummaryHelp

  • Documentation
    • Reference manual
      • Built-in Predicates
        • Database
          • Managing (dynamic) predicates
            • Transactions
              • transaction/1
              • transaction/2
              • transaction/3
              • snapshot/1
              • current_transaction/1
              • transaction_updates/1
    • Packages
Availability:built-in
Sourcesnapshot(:Goal)
Similar to transaction/1, but always discards the local modifications. In other words, snapshot/1 allows a thread to examine a frozen state of the dynamic predicates and/or make isolated modifications without affecting other threads and without making permanent changes to the database. Where transactions allow the global state to be updated atomically from one consistent state to the next, a snapshot allows reasoning about a consistent state.