Instrukcja to żądanie wykonania określonej funkcji w programie Solana. Instrukcje są podstawowym elementem budulcowym operacji onchain. Każda instrukcja określa dokładnie jeden program do wywołania, konta, których potrzebuje, oraz tablicę bajtów danych, które program interpretuje (zazwyczaj dyskryminator identyfikujący, który handler instrukcji ma zostać uruchomiony, a następnie zserializowane argumenty). Logika wykonania każdej instrukcji jest przechowywana w programie, gdzie każdy program definiuje swój własny zestaw instrukcji. Aby wchodzić w interakcję z siecią Solana, jedna lub więcej instrukcji jest dodawanych do transakcji i wysyłanych do sieci w celu przetworzenia.
Diagram przedstawiający transakcję z instrukcją, podzieloną na 3 komponenty
Struktura instrukcji
Trzy pola instrukcji (program_id, accounts, data), AccountMeta, instrukcje skompilowane oraz przykład transferu SOL.
Introspekcja instrukcji
Jak programy analizują sąsiednie instrukcje w bieżącej transakcji za pomocą zmiennej systemowej Instructions.
Najważniejsze informacje
- Jeden program: Każda instrukcja jest skierowana dokładnie do jednego
programu przez
program_id. - Metadane konta: Tablica
accountszawieraAccountMetadla każdego konta, które instrukcja odczytuje lub zapisuje. - Nieprzezroczyste dane: Pole
datato tablica bajtów, której format jest definiowany przez docelowy program.
Is this page helpful?