Problemi con i tavoli invisibili raccolti in garabage<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Voglio eseguire calcoli su tabelle invisibili per accelerare l'esecuzione.
Tuttavia, le mie tabelle invisibili vengono cancellate prima che possa fare qualcosa di utile. Nell'output del registro ottengo il seguente messaggio:
La tabella 'Tavolo invisibile' è stata chiusa automaticamente perché nessuna variabile o finestra si riferisce ad essa.
Secondo la Guida allo scripting di JMP, questo comportamento è previsto se la tabella invisibile è stata creata utilizzando il comando Sottoinsieme (invisibile). Ma sto creando una nuova tabella usando
dt = newTable ("Invisible table", invisible);
La JMP Scripting Guide sottolinea che quando faccio questo devo ricordare di chiudere il tavolo o rimarrà in memoria fino a quando non esco da JMP. Ma nel mio caso viene automaticamente cancellato qualche tempo dopo la mia prima operazione sul tavolo, anche se assegno un riferimento alla tabella. (Se creo la tabella senza l'opzione invisibile tutto funziona come dovrebbe)
Utilizzo di JMP 8
Problemi con i tavoli invisibili raccolti in garabageHo fatto ulteriori ricerche e sembra che il problema si verifichi quando sto chiudendo una sottotabella che è collegata alla tabella invisibile.
Quindi sto facendo qualcosa del genere:
dt = newTable ("Invisible table", invisible);
dt << Selezionare Dove (/ * alcuni criteri di selezione * /);
subdt = dt << Sottoinsieme (nome tabella di output ("tabella sottoinsieme"), Linked);
// alcune operazioni su subdt
chiudere (subdt, nosave)
Questo codice è racchiuso in un ciclo che varia i criteri di selezione per il comando Seleziona.
Il problema è il comando close (). Se non chiudo la sottotabella, il riferimento alla tabella invisibile non scompare. (Inoltre, se non si specifica la sottotabella come Collegata, verrà eseguita correttamente)
Sapendo questo sono in grado di trovare altri modi per risolvere il mio problema, ma se hai qualche spiegazione su questo comportamento sarei interessato a sentirlo
Saluti,
Helge
Problemi con i tavoli invisibili raccolti in garabagePuoi fornire qualche altro contesto per la nuova tabella ()?
Ad esempio, se riutilizzi la variabile JSL dt quindi non c'è più un riferimento al tavolo invisibile e JMP lo chiuderà.
dt = New Table ("Invisible table", invisible);
dt = .;
Quindi, abbiamo bisogno di vedere un po 'di più del tuo JSL per aiutare a capire cosa potrebbe succedere.
-Jeff