Suppongo che questo sia un esempio di codice interessante. Abbiamo una class – chiamiamola Test – con un metodo Finalize . Nel metodo Main ci sono due blocchi di codice in cui sto usando un’istruzione lock e una chiamata Monitor.Enter () . Inoltre, ho due istanze della class Test qui. L’esperimento è piuttosto semplice: annullare […]
Ho una grande applicazione C # multi-thread in esecuzione su un server multi-core a 4 vie. Attualmente stiamo usando la garbage collection “server mode”. Tuttavia, i test hanno dimostrato che la modalità GC della workstation è più veloce. MSDN dice : Le applicazioni di codice gestito che utilizzano l’API del server ricevono vantaggi significativi dall’utilizzo […]
Per codice generale, ho davvero bisogno di disporre di un object? Posso ignorarlo per la maggior parte o è una buona idea disporre sempre un object quando il 100% è sicuro di non averne più bisogno?
Mi chiedo quali sono le situazioni esatte che innescano la Full Garbage Collection in Java. Gli ovvi sono: A corto di vecchia generazione A corto di perm gen Chiamando System.gc () Che dire degli altri casi che causano il pieno gc? In particolar modo: Non avere abbastanza spazio libero in Survivor Space per copiare oggetti […]
Recentemente stavo discutendo con un collega sul valore di Dispose e sui tipi che implementano IDisposable . Penso che sia importante implementare IDisposable per i tipi che dovrebbero essere eliminati il prima ansible, anche se non ci sono risorse non gestite da ripulire . Il mio collega la pensa in modo diverso; l’implementazione di IDisposable […]
Dare il seguente codice: class A { Boolean b; A easyMethod(A a){ a = null; return a; } public static void main(String [] args){ A a1 = new A(); A a2 = new A(); A a3 = new A(); a3 = a1.easyMethod(a2); a1 = null; // Some other code } } La domanda è: quanti […]
Se chiamo il metodo Object.hashcode() su qualche object restituisce l’indirizzo interno dell’object (implementazione predefinita). Questo indirizzo è un indirizzo logico o fisico? Nella garbage collection, a causa degli oggetti di compattazione della memoria, lo spostamento avviene nella memoria. Se chiamo hashcode prima e dopo il GC, restituirà lo stesso hashcode (restituisce) e se sì, perché […]
Come impedire a un object di raccogliere i rifiuti? Ci sono approcci finalizzati o riferimenti fantasma o altri approcci? Mi è stata fatta questa domanda in un’intervista. L’intervistatore ha suggerito di finalize() .
Sono stato ‘forzato’ ad aggiungere myLocalVar = null; dichiarazione in clausola infine appena prima di lasciare il metodo. La ragione è aiutare GC. Mi è stato detto che riceverò degli SMS durante la notte quando il server si blocca la volta successiva, quindi è meglio che l’abbia fatto :-). Penso che questo sia inutile, dato […]
70.222: [GC [PSYoungGen: 131072K-> 15437K (152896K)] 131072K-> 15509K (502464K), 0,0228420 secs] [Volte: utente = 0,09 sys = 0,01, reale = 0,02 sec]