Une transaction en TON un processus qui comprend:
- Envoyer du message entrant pour activer le contrat intelligent;
- Exécution des actions à l ' intérieur du contrat;
- La génération Les messages sortants aux autres participants.
Les composants communs des transactions#
- Le compte auquel appartient la transaction;
- Le temps logique les opérations;
- 0 ou 1 le message entrant;
- N des messages sortants;
- L ' état initial et final du compte (y compris le bilan);
- La somme totale des frais des validateurs;
- Description détaillée (type + étapes intermédiaires).
Le temps logique
- L'ordre exact des événements système asynchrone de contrats intelligents;
- Chaque message sortant reçoit son timestamp;
- Strictement croissante pour les communications d ' un seul contrat;
- Les validateurs sont utilisés pour le tri et le traitement.
Types de transactions#
| Le type | Nommé |
|---|---|
| Les habituelles | Ils traitent les messages entrants, changent d'état, génèrent des messages sortants. |
| Le stockage | Collecte des paiements pour le maintien du compte (aucun code n ' est appelé) |
| Tick | Au début de chaque bloc de master |
| Tock | À la fin du bloc de travail, |
| Les séparateurs | Le compte est divisé en ξ et ξ' (charder) |
| Les éléments de fusion | Unifier les comptes (optimisation) |
Phases de transaction ordinaire#
- Phase de stockage le prélèvement des frais de conservation;
- Phase de crédit (credit) le compte reçoit la somme du message entrant;
- Phase de calcul (compute) le code du contrat est appelé TVM, se termine par un code de sortie + nouvelles données + liste d ' actions;
- Phase d'action exécuter les actions de la liste;
- Phase de rebond si elle est interrompue et installée le drapeau de rebond → le message retourne à l'expéditeur.
Caractéristiques#
Transactions de stockage
- Ils sont insérés par les validateurs à condition:
- Le compte n' a pas été utilisé depuis longtemps;
- Le solde est insuffisant pour payer le stockage;
- Si le solde tombe en dessous du minimum → Le compte est gelé., le code et les données sont remplacés par un hash.
Tick + Tock
- Réservé à des contrats intelligents spécialisés;
- Ils sont appelés automatiquement à chaque bloc.
La séparation
- Transaction de préparation de séparation (comme tock) pour ξ la dernière dans le bloc de la chaîne de caractères;
- Transaction de mise en partition pour ξ' en référence à la préparation.
L'association
- Transaction de préparation de l ' association pour ξ' → conversion de l'état et du solde en message-constructeur;
- Transaction d'installation de l'unité Pour ξ, il traite le message.