Script instabileHo uno script che non sta facendo quello che voglio che faccia. quindi aggiungo una diagnostica banale per aiutare a rintracciare cosa sta succedendo:
show("here");
Ma quando lo faccio, causa il crash di JMP.
Mi chiedo solo se qualcun altro ha incontrato questo tipo di problema.
So che non c'è molto da fare!
Ri: Script instabileNo. L'ho fatto da solo e non mi capita. Nel codice normale, non mostro spesso () per non variabili, di solito stampo ().
Ri: Script instabileQuesto comportamento è riproducibile? Cosa succede dopo che JMP si arresta in modo anomalo e lo si riavvia?
Ri: Script instabileDave,
Non ho alcun problema con questo, in esecuzione in Windows 10, con JMP Pro 14.3Ri: Script instabileAlcuni aggiornamenti:
- Questo problema si verifica su MacOS. Funziona bene su Windows. Stavo eseguendo 14.2 e ho aggiornato a 14.3 e il problema si verifica ancora.
- Il problema è ripetibile, anche se penso che farei fatica a creare un semplice script di esempio che mostri lo stesso comportamento.
- L'unica ragione per cui ho uno "show" è perché il codice reale stava causando un crash e io ho usato le istruzioni show per tracciare l'esecuzione. Ma anche con il codice più banale che potessi pensare - solo lo "spettacolo" - il problema si è verificato ancora. MA - se sostituisco "show" con "print", allora il crash non si verifica! Quindi questo è un progresso!
Ri: Script instabileRi: Script instabileCome ho detto, "print" sta funzionando, ma in realtà era solo un segnaposto per qualche altro codice che stava causando un crash.
Ho fatto altri test. Questo sta iniziando a sentirsi come Schrodinger cat.
Ho ripristinato il codice originale.
Se riavvio JMP ed eseguo lo script fallisce. Se riavvio JMP e apro lo script - guardalo, per ricordare a me stesso come appare - quindi chiudi lo script ed eseguilo, funziona.
Ri: Script instabileSe si è bloccato, si tratta di un bug in JMP. Se ottieni una specie di file di crash, questo potrebbe aiutarci a capirlo.
Solo supposizioni, immagino ci siano caselle di visualizzazione e report chiusi coinvolti, e in qualche modo c'è una variabile JSL che punta a una finestra di visualizzazione che viene cancellata. A seconda di cosa è successo a quella memoria da quando è stata cancellata, possono accadere cose brutte. O forse niente. Scrivere sul registro, con lo spettacolo o la stampa, può far scattare la pulizia di alcuni display box e probabilmente l'arresto anomalo.
Abbiamo lavorato molto su JMP 15 per gestire le finestre di visualizzazione in un modo più moderno; potresti ottenere una diagnosi migliore da un JMP 15 che utilizza in anticipo.
Ri: Script instabileSei perfetto su Craige.
Ho passato un noioso processo di rigenerazione del codice, blocco dopo blocco, riavviando ogni volta JMP. La causa dell'errore era una finestra di visualizzazione che stavo cancellando. La finestra di visualizzazione era la leggenda di un grafico a bolle: volevo inserirlo in un VListBox in modo da poterlo allineare con alcune informazioni aggiuntive, quindi ho creato un clone, l'ho eliminato e aggiunto come parte di un VListBox. Il grafico a bolle era anche all'interno di un contenitore e all'epoca non era stato collegato a una finestra, quindi non era stato reso. La mia prima soluzione è stata quella di cancellarlo dopo il rendering e andava bene, ma lo sfarfallio. Ho quindi deciso che avrei potuto sbarazzarmene inviando un messaggio alla trama della bolla e che funzionava perfettamente.