TXFAJavaScriptSession

Unità: HPDFXFAEventScript

Dichiarazione

TXFAJavaScriptSession= class

Comportamento

Gestisce un motore QuickJS indipendente e un journal limitato di valutazioni virtuali confermate

Preserva variabili lessicali di oggetti script, funzioni, valori di oggetti e closure annidate tra gli eventi; il rollback ricostruisce il motore rigiocando le valutazioni confermate

Registra gli input di Date e Math.random per un replay riproducibile; il replay esegue solo operazioni virtuali sui form e non pubblica mutazioni del documento

Il codice di supporto degli eventi viene compilato una volta per ogni motore posseduto; ogni valutazione fornisce un contesto form e dati fresco, il corpo dello script, limiti e vettori di risposta registrati

Il rollback reinstalla quel codice di supporto e rigioca le valutazioni dinamiche confermate, preservando stato lessicale e closure indipendenti senza riparizzare la libreria di supporto per ogni voce del journal

Il sorgente di supporto condiviso viene addebitato una sola volta sul limite di byte del journal, insieme alle valutazioni dinamiche confermate e ai risultati restituiti; ricostruzione e replay restano dentro i limiti esistenti di tempo trascorso e del motore

I limiti predefiniti del journal sono 64 MiB per script più risultati restituiti e 8192 valutazioni, identity binding incluse; si applicano anche i limiti del motore su memoria, stack, operazioni, interrupt e tempo trascorso

TXFAWidgetRuntime possiede automaticamente una sessione quando si usa il motore generale incluso; lo stato della sessione non viene serializzato nell'XDP e un nuovo runtime parte pulito

La classe è single-thread e non deve essere condivisa da chiamanti concorrenti

API correlate

TXFAJavaScriptSession, HPDFXFAExecuteJavaScriptEvent e Runtime interattivo per widget XFA dinamici